La recherche est devenu un moyen naturel d’accéder à l’information. Azure Search est un service Azure permettant de créer des modules de recherche dans lesquelles on va pouvoir indexer des contenus pour permettre de la recherche. Comme tous les services Azure, la recherche est géoréplicable et propose de l’elasticité sur les ressources. Le service propose une version gratuire qui contient toutes les fonctionnalités mais un nombre limité de requêtes.

Comme la plupart des outils de recherche Azure Search fonctionne en créant et alimentant des index, dans lesquels on définit une schéma de données, en déclarant des champs. Ces champs vont porter des méta données qui vont indiquer le type (string, int, point géographique, …), et définir le comportement des champs lors de la recherche (searchable, filterable, retrievable, …). Les champs peuvent également avoir des paramètres linguistiques, du stemming (réduction des mots selon des critères phonétiques), et des analysers spécifiques ou provenant de Lucene.

Le service permet de faire de la recherche pur, ou en mode suggestions (pour des usages type autocomplete).

Pour alimenter l’index, on peut pousser manuellement des données dedans avec une API Rest (possibilité de faire des batchs avec jusqu’à 1000 doucments, en mode CRUD), ou configurer une synchronisation des données avec Azure Document DB, ou SQL Azure.