Archive

Articles taggués ‘Indexation’

Indexation et recherche de documents MongoDB avec ElasticSearch

Après avoir alimenté une base MongoDB avec un job Spring Batch, et décrit les principes du moteur de recherche ElasticSearch, nous allons maintenant combiner le tout pour indexer les documents et faire des recherches.

Installation du plugin elasticsearch-river-mongodb

Afin d’indexer les documents stockés dans MongoDB, nous allons installer un autre plugin de type ‘river’. Les plugins de type ‘river’ permettent de faire des indexations automatiques à partir d’une source de données. Dans notre cas une base MongoDB. Une liste des rivers est disponible sur ce lien : http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-plugins.html. On pourrait par exemple indexer des tweets, des fichiers csv, une base MySQL, …

En ce qui concerne notre use-case nous allons installer le plugin elasticsearch-river-mongodb. Attention les versions de MongoDB et ElasticSearch doivent correspondre avec la version du plugin. Pour ma part voici les versions utilisées :

  • MongoDB : 2.6.5
  • ElasticSearch : 1.4.1
  • Plugin : 2.0.4

Lire la suite…

Premiers pas avec ElasticSearch

Dans un premier post, j’ai testé comment enregistrer un grand nombre de données par batch en utilisant Spring Batch et une base MongoDB. L’exemple était d’enregistrer le nom des villes du monde avec quelques caractéristiques. Pour aller plus loin, je souhaiterai faire des recherches parmi ces noms de ville. On peut tout à fait utiliser MongoDB pour cela, mais autant tester un vrai moteur d’indexation/recherche : ElasticSearch. Lire la suite…