Lucene

Développement d’un moteur de recherche textuel avec Lucene et Solr

Objectifs : 

Grâce à une approche à la fois théorique et pratique, ce cours permet d’apprendre à concevoir un moteur de recherche textuel en employant la librairie Lucene sur une plateforme Java.

L’API Lucene est explorée afin de maîtriser d’une part les mécanismes d’indexation des documents et d’autre part la conception et l’implémentation d’une interface de recherche exploitant les index.

L’application Solr utilisant Lucene est analysée afin de déterminer diverses possibilités d’intégration dans une application en vue de lui associer un moteur d’indexation et de recherche.

Les travaux pratiques apportent une réalisation concrète des notions théoriques et facilitent la compréhension des concepts présentés.

Durée:

5 jours (35 heures)

 

Méthodologie : 

50% de cours théoriques et 50% de travaux pratiques.

 

Contenu : 

Introduction

Présentation

Problématiques adressées par Lucene

Lucene et les autres langages de programmation

Indexation de documents

Recherche d’informations dans les index

Présentation de l’API

Les classes de bases de l’indexation

Les classes de bases de la recherche

Création d’un index

Recherche dans un index

Processus d’indexation

Conversion de données en chaînes de caractères

Analyse textuelle

Ecriture des index

Opérations sur les Documents d’un index

Les différents types d’index

Mécanismes avancés d’indexation

Contrôle du processus d’indexation

Indexation en mémoire vive

Optimisation des index

Indexation et multi-threading

La recherche

Interroger un index

Recherche d’un terme simple

Recherche à partir d’une expression

Création de requête programmatique

Analyse d’expression de requêtes

Analyser

Analyzers de l’API Lucene

Ecriture d’analyzers

Analyzers et langues

Techniques de recherche avancée

Tri des résultats

Recherche dans plusieurs champs indexés

Filtres

Recherche au sein de plusieurs index

Introduction de Solr

Présentation

Solr et Lucene

Installation de Solr

Utilisation de Solr

Interface HTTP

Formats de réponses

Indexation de données

Mise à jour de données

Suppression de données

Interrogation des index

Fonctionnalités avancées de Solr

Tri des résultats

Facettes

Cache des résultats