JDONREFv4 plugin GettingStarted : Différence entre versions

De JDONREF Wiki
(Création de l'index)
(Indexation)
Ligne 97 : Ligne 97 :
   
 
A noter enfin qu'il est conseillé d'utiliser l'API [[http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/docs-bulk.html BULK]] d'ElasticSearch pour procéder à l'indexation d'un très grand nombre d'adresses.
 
A noter enfin qu'il est conseillé d'utiliser l'API [[http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/docs-bulk.html BULK]] d'ElasticSearch pour procéder à l'indexation d'un très grand nombre d'adresses.
  +
  +
Attention, pour que la [[JDONREFv3ES_Query|requête]] du [[JDONREFv3ES_Plugin|plugin]] fonctionne correctement, certains champs doivent être correctement renseignés. L'[[JDONREFv3ES_Analyzer|analyzer]] fourni permet de remplir ce travail automatiquement.
   
 
===== Recherches =====
 
===== Recherches =====

Version du 14 avril 2014 à 21:45

L'utilisation du plugin JDONREFv3ES nécessite :

  • de disposer d'un cluster elasticsearch !
  • d'installer le plugin JDONREFv3ES
  • d'indexer le contenu

Vous êtes ensuite libre d'effectuer les recherches souhaitées ! L'API elasticsearch peut bien sûr être utilisée, mais le plugin jdonrefv3es fourni un moyen de chercher efficacement des adresses (c'est à dire avec les résultats auquel on devrait s'attendre).

Création de l'index

Commencez par vous créer un index :

 curl -XPUT 'http://localhost:9200/jdonref/'

Pour que le plugin jdonrefv3es soit efficace, il s'agit de respecter les mappings fournis par jdonref. Il est ainsi possible d'indexer du contenu, comme une commune :

 curl -XPUT 'http://localhost:9200/jdonref/commune/1' -d '{
   "codeinsee" : "75056",
   "codedepartement" : "75",
   "codepays" : "1",
   "commune" : "PARIS",
   "codepostal" : "75000",
   "t0" : "22/03/2014",
   "geometrie" : {
       "type": "multipolygon",
       "coordinates" : [
          [[102.0, 2.0], [103.0, 2.0], [103.0, 3.0], [102.0, 3.0], [102.0, 2.0]],
          [[100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0]],
          [[100.2, 0.2], [100.8, 0.2], [100.8, 0.8], [100.2, 0.8], [100.2, 0.2]]
       ]
   }
 }'

ou une voie :

 curl -XPUT 'http://localhost:9200/jdonref/voie/1' -d '{
   "numero_min": "1",
   "numero_max": "192",
   "typedevoie": "BOULEVARD",
   "article": "DE",
   "voie": "HOPITAL",
   "codeinsee" : "75056",
   "codedepartement" : "75",
   "codepays" : "1",
   "commune" : "PARIS",
   "codepostal" : "75000",
   "t0" : "22/03/2014",
   "geometrie" : {
       "type": "multipolygon",
       "coordinates" : [
          [[102.0, 2.0], [103.0, 2.0], [103.0, 3.0], [102.0, 3.0], [102.0, 2.0]],
          [[100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0]],
          [[100.2, 0.2], [100.8, 0.2], [100.8, 0.8], [100.2, 0.8], [100.2, 0.2]]
       ]
   }
 }'
Utiliser les synonymes

A noter qu'il vous est possible d'utiliser la gestion des synonymes offertes par elasticsearch avec le fichier de synonyme fourni par jdonrefv3es. Il suffit de le définir à la création de votre index :

 curl -XPUT 'http://localhost:9200/jdonref/' -d '{
   "analysis" : {
     "analyzer" : {
       "synonym": {
         "tokenizer": "whitespace",
         "filter": ["synonym"]
       }
     },
     "filter": {
       "synonym" : {
         "type" : "synonym",
         "synonyms_path" : "jdonrev3es_synonym.fr.txt"
       }
     }
   }
 }'

La recherche pourra ainsi par exemple être effectuée avec le type de voie "BD" plutôt que "BOULEVARD".

Utiliser l'analyser

Si vous ne voulez pas remplir vous-même les champs "ligne4" et "ligne6", il vous est possible d'utiliser l'analyzer fourni par jdonref :

 curl -XPUT 'http://localhost:9200/jdonref/' -d '{
   "analysis" : {
     "analyzer" : {
       "jdonrefv3es": {
         "tokenizer": "whitespace"
       }
     }
   }
 }'

Si les lignes 4 et 6 ne sont pas spécifiées durant l'indexation, elles sont alors calculées à partir des autres champs disponibles.

Indexation

A noter enfin qu'il est conseillé d'utiliser l'API [BULK] d'ElasticSearch pour procéder à l'indexation d'un très grand nombre d'adresses.

Attention, pour que la requête du plugin fonctionne correctement, certains champs doivent être correctement renseignés. L'analyzer fourni permet de remplir ce travail automatiquement.

Recherches

Une fois le contenu indexé, il vous est possible d'effectuer des recherches à loisir !