Elasticsearch - Indexation et recherches simples

Fondamentaux

RappelJSON

JSON est un format léger d'échange de donnée. Il est facile à lire ou à écrire pour des humains. Il est aisément analysable ou générable par des machines.

JSON se base sur deux structures:

  • Une collection de couples nom/valeur (aussi appelé objet). Formalisé en JSON par une { à gauche et une } à droite. Chaque clé est suivi de : et les couples clé/valeur sont séparés par  ,

  • Une liste de valeurs ordonnées (aussi appelé tableau). Formalisé en JSON par une [ à gauche et une ] à droite. Les valeurs sont séparés par des ,

Une valeur peut être soit une chaîne de caractères entre guillemets, soit un nombre, soit true ou false ou null, soit un objet soit un tableau. Ces structures peuvent être imbriquées.

ExempleExemple d'un formatage en JSON

1
{ "id": 66,
2
  "value": true,
3
   "menuitem": [
4
      {"value": "New", "onclick": "CreateNewDoc()"},
5
      {"value": "Open", "onclick": "OpenDoc()"},
6
      {"value": "Close", "onclick": "CloseDoc()"}
7
   ]
8
}

RappelAPI REST

Application Programming Interface REpresentational State Transfer

Les API REST sont basées sur HTTP. Un client lance une requête HTTP, et le serveur renvoie une réponse. Les réponses du serveur pour les API REST peuvent être délivrées dans de multiples formats. JSON (JavaScript Object Notation) est utilisé par Elasticsearch, mais XML, CSV, ou même RSS sont aussi valables.

Ce sont des méthodes qui définissent les types de requêtes que le client peut effectuer :

  • GET : permet de récuperer des informations

  • PUT : Permet de stocker des information

  • POST : permet de mettre a jours de informations

  • DELETE : permet de supprimer des informations

A l'entête de la requête un corps peut être accolé, ce qui permet de transmettre les informations nécessaires à l’exécution de l'action demandée. Là encore, Elasticsearch utilise JSON.

FondamentalURL type de l'API Elasticsearch

Ellasticsearch offre une API REST permettant d'effectuer tous les types d'opération. Il support les méthodes HTTP GET, PUT, POST et DELETE.

Exemple de syntaxe d'appel de l'API REST lorsque Elasticsearch est lancé en local (depuis un navigateur, une requête Curl, wget, ...)

http://localhost:9200/[index]/[type]/[id]/[action]

  • Index : Nom de l'index

  • Type : Nom du type du document

  • Id : ID du document

  • Action : Action à effectuer

PrécédentPrécédentSuivantSuivant
AccueilAccueilImprimerImprimer Robin Jolliet, 2016 (Contributions : Stéphane Crozat, les étudiants de l'UTC) Paternité - Partage des Conditions Initiales à l'IdentiqueRéalisé avec Scenari (nouvelle fenêtre)