JDONREFv4 Plugin BeginnersMode
Cette page est en cours de rédaction
Cette page est destinée aux personnes qui souhaitent installer JDONREF mais qui ne disposent pas de compétences sur ElasticSearch.
Les utilisateurs aguerris de ElasticSearch préféreront cette page.
Des compétences d'administration système sont tout de même nécessaires pour certaines opérations.
Prérequis
- une ou plusieurs machines (virtuelles) sur le même réseau avec au minimum de :
- deux coeurs
- 8 à 64 Go de RAM (pas plus par machine)
- 100 Go DD pour indexer la France entière (éventuellement réparti sur vos différentes machines)
- installer java (7 de préférence).
- installer elasticsearch
- paramétrer correctement l'usage de la mémoire. Le tas (heap) ElasticSearch doit représenter 50% de votre RAM. Par défaut, vous serez restreint à 1 Go de RAM, ce qui reste toutefois valable pour de simples tests (mais dommage si vous en avez 8 Go ou plus !).
Si vous ne vous en sortez pas, vous nécessitez sans doute un administrateur système. Inutile d'aller plus loin.
Installation
Sur chacune de vos machines :
cd /usr/share/elasticsearch bin/plugin --install elasticsearch-jdonrefv4-0.2 --url http://sourceforge.net/p/jdonref/code/HEAD/tree/Dev/JDONREFv4/dist/elasticsearch-jdonrefv4-0.2.zip?format=raw
puis sur l'une d'elles :
curl -XPUT 'http://localhost:9200/jdonref/' -d @/usr/share/elasticsearch/plugins/jdonrefv4-0.2/jdonref-settings.json curl -XPUT 'http://localhost:9200/jdonref/poizon/_mapping' -d @/usr/share/elasticsearch/plugins/jdonrefv4-0.2/mapping-poizon.json curl -XPUT 'http://localhost:9200/jdonref/adresse/_mapping' -d @/usr/share/elasticsearch/plugins/jdonrefv4-0.2/mapping-adresse.json curl -XPUT 'http://localhost:9200/jdonref/voie/_mapping' -d @/usr/share/elasticsearch/plugins/jdonrefv4-0.2/mapping-voie.json curl -XPUT 'http://localhost:9200/jdonref/troncon/_mapping' -d @/usr/share/elasticsearch/plugins/jdonrefv4-0.2/mapping-troncon.json curl -XPUT 'http://localhost:9200/jdonref/commune/_mapping' -d @/usr/share/elasticsearch/plugins/jdonrefv4-0.2/mapping-commune.json curl -XPUT 'http://localhost:9200/jdonref/departement/_mapping' -d @/usr/share/elasticsearch/plugins/jdonrefv4-0.2/mapping-departement.json curl -XPUT 'http://localhost:9200/jdonref/pays/_mapping' -d @/usr/share/elasticsearch/plugins/jdonrefv4-0.2/mapping-pays.json
Tests
curl -s -XPOST 'http://localhost:9200/_bulk' --data-binary @/usr/share/elasticsearch/plugins/jdonrefv4-0.2/simplebulksample.json curl -XGET 'http://localhost:9200/jdonref/_search' -d '{"query":{"jdonrefv4":{"value":"24 BOULEVARD HOPITAL"}}}'
Amusez-vous
A ce stade, vous pouvez indexer ce qu'il vous plaît, en remplaçant le fichier simplebulksample.json par exemple ! Commencez par vider l'index :
curl -XDELETE 'http://localhost:9200/jdonref/_query' -d '{"query":{"match_all":{}}}'
puis réindexez votre propre fichier. Il n'y a pas de règle sur le poids d'un fichier bulk, mais son nombre de lignes est directement lié aux performances. Il s'agit simplement de faire quelques tests.
Toutes les autres requêtes de ElasticSearch peuvent être combinées avec celle de JDONREF.
Vous pouvez par exemple filtrer votre requête sur un département :
curl -XGET 'http://localhost:9200/jdonref/_search' -d '{ "filtered" : { "query": { "jdonrefv4" : { "value" : "24 BOULEVARD DE L HOPITAL 75 PARIS" } }, "filter": { "term" : { "code_departement" : "75" } } } }'
Production
Si vous passez suffisamment de temps sur ce plugin, après quelques tests poussés vous constaterez que cette configuration ne convient pas exactement pour un usage en production. Quelques optimisations sont nécessaires. Elles sont abordées dans la section avancée.