Indexation plein-texte avec Search::Indexer
Par Laurent Dami (dami) de Geneva.pm
Date : vendredi 10 juin 2005 14h25
Durée : 20 minutes
Langue :
Les modules Search::Indexer et Search::QueryParser ont été publiés sur CPAN au début 2005. Ils permettent d'indexer une collection de documents, d'effectuer des recherches sophistiquées (combinaisons booléennes, séquences de mots, etc.), et de préparer la présentation des résultats avec extraits contextuels et mise en évidence des mots repérés. Conçus dès l'origine en Perl, ils tirent parti au maximum de ses points forts (expressions régulières, hachages, liaison avec BerkeleyDB en langage C) ; en cela, ils diffèrent considérablement de "Plucene" (portage Perl de la solution Java "Lucene").
La présentation commencera par brosser un bref panorama des solutions disponibles et des motivations pour le développement de Search::Indexer. Ensuite nous examinerons l'interface fonctionnelle du module, avec des exemples tirés de l'intranet du pouvoir judiciaire genevois (indexation des décisions de justice).
En passant, certains points non-triviaux de l'implémentation seront abordés.