![]()
La nouvelle version 1.4.0 de Solr est enfin disponible. Cette sortie est l’occasion de présenter Solr à ceux qui ne le connaissent pas encore.
Solr (on prononce « solar ») est une outil open source permettant de mettre en place des fonctionnalités de recherche dans différents types d’applications et notamment des sites web (mais pas seulement). Solr est basé sur Lucene qui est présenté dans un précédent article. Cette nouvelle version bénéficie des dernières évolutions de Lucene 2.9.
Comme Lucene, Solr est développé en Java. Il étend les fonctionnalités de Lucene et en simplifie la mise en oeuvre. Sorl fournit principalement 3 choses :
- un web service d’indexation des données
- un web service de recherche
- une interface web d’administration
Avec Solr, les documents sont ajoutés à une collection via « XML over HTTP » (une requête HTTP en mode POST qui envoit des données XML décrivant le document à indexer), et les recherches sont faites avec au moyen d’une requête HTTP qui retourne un résultat au format XML (les documents correspondants à la requête). Le traitement des requêtes HTTP par Solr se fait au moyen d’une servlet (installé sous Tomcat par exemple).
Les 3 principaux avantages à utiliser Solr et non pas Lucene seul sont :
- Le fonctionnement en mode services WEB (REST), c’est à dire, la possibilité d’indexer et de rechercher des documents sans la moindre ligne de code si ce n’est la construction des données XML pour l’indexation et l’exploitation des données XML retournées par une recherche
- l’utilisation dans des applications écrites dans n’importe quel langage et permettant de communiquer en HTTP
- Solr étend et optimise Lucene (performances, analyseurs de texte, monitoring, …)
Les fonctionnalité principales ajoutées à Lucene sont :
- Configuration au moyen de fichiers XML
- Mise en évidence des termes trouvés (Hit highlighting)
- Navigateurs dans les résultats (Faceted search)
- Gestion de cache
- Une interface d’administration Web
- Architecture extensible basée sur des plugin
- Optimisation pour des hauts trafics Web
- Statistiques
Pour comprendre le fonctionnement de Solr, je vous conseil ces articles (en anglais) :
- Le tutorial de Solr
- Solr: Indexing XML with Lucene and REST
- Une première présentation sous forme de slides
- Une seconde présentation sous forme de slides
Voici une série de 3 articles (toujours en anglais) d’une très grande qualité écrit par Grant Ingersoll. Les 2 premiers articles sont une présentation détaillée de Solr et le troisième présente les nouveautés de la version 1.3 sortie en septembre 2008.
Mai et Juin 2007 :
- Search smarter with Apache Solr, Part 1: Essential features and the Solr schema
- Search smarter with Apache Solr, Part 2: Solr for the enterprise
Septembre 2008 :
Bonne lecture.














