Comparaison d’indexeurs : ElasticSearch et Solr

Proposition de stage ou de mémoire

Comparaison d’indexeurs : ElasticSearch et Solr

Proposition de stage ou de mémoire

Profil Étudiant(e) Bachelier(e)/Master.
Prérequis Connaissance de l’anglais technique. Intérêt pour l’indexation des données.
Durée Minimum 12 semaines.

Contexte

ElasticSearch et Solr sont des moteurs de recherche (basés sur Lucene) permettant de centraliser les opérations d’indexation et de services de résultats. Ils sont capables de communiquer avec d’autres applications via de nombreux protocoles basés sur des standards ouverts et disposent également d’une interface web d’administration.

L’une des caractéristiques majeures de Lucene est la capacité d’indexer les contenus par champ, ou par attribut, c’est-à-dire qu’un document n’est pas analysé comme un simple ensemble de mots mais comme constitué de champs, chaque champ étant une suite de mots (terms). Solr et ElasticSearch permettent de tirer pleinement parti de cette fonctionnalité. Ce fonctionnement permet une gestion beaucoup plus fine de la pertinence et de la recherche avancée.

Des différences existent entre ElasticSearch et Solr. Le but du stage est d’identifier ces différences et de les objectiver.

Travail à réaliser

  • Définition d’une grille d’évaluation (http://solr-vs-elasticsearch.com)
  • Installation des outils (Solr + ElasticSearch)
  • Définition d’un scénario de test (données à indexer)
  • Comparaison des plugins disponibles pour Solr et ElasticSearch (intégration du moteur de recherche avec des systèmes de gestion de bases de données comme MySQL ou MongoDB, analyse des librairies existantes pour des langages de programmation comme Java ou Python)
  • Réalisation de benchmarks
    • Haute disponibilité
    • Performance
    • Performance /version

Encadrement

Le stagiaire sera encadré par un maître de stage qui organisera régulièrement des réunions de suivi et répondra aux demandes techniques du stagiaire.

Un transfert de connaissance sur les outils sera prévu en début de stage. Le cas d’application sera défini par le maître de stage en tenant compte des intérêts et des propositions du stagiaire.

Le stagiaire aura la possibilité d’avoir accès à des ressources virtuelles (cloud interne CETIC ou cloud public tel qu’AWS).

Contact : Fabrice Estiévenart (fabrice.estievenart@cetic.be)