Qu'est-ce que SOLR ?
Solr (prononcé comme le mot solar en anglais) est une plateforme logicielle de moteur de recherche s'appuyant sur la bibliothèque de recherche Lucene, créée par la Fondation Apache et distribuée et conçue sous licence libre.
Solr utilise le langage Java et est exécuté par un conteneur de servlets, comme Tomcat, jusqu'à la version 5.0 puis devient un standalone Java. Il communique avec le client à l'aide d'une interface de programmation en XML et JSON, généralement via le protocole HTTP.
Principales fonctionnalités
- API HTTP/XML, JSON et bibliothèques pour les langages de script Python et Ruby.
- Intégration des bases de données
- Utilise la bibliothèque Java Lucene pour la recherche full-text
- Recherche à facettes
- Surlignage des termes trouvés
- Le langage de requêtage supporte les données structurées aussi bien que les données textes
- JSON, XML, PHP, Ruby, Python, XSLT, CSV, Velocity et des formats de sorties binaires en Java par HTTP
- Interface d'administration en HTML
- Réplication vers d'autres serveurs Solr - permet la scalabilité par rapport aux requêtes QPS
- Recherche distribuée par le Sharding - Permet la scalabilité par rapport au volume de documents indexés
- Clusterisation des résultats de recherche basée sur Carrot2
- Mécanisme d'extension par plugins
- Flexibilité de la pertinence - boosts avec les function queries
- Mise en cache - requêtes, filtres et documents
- Embarcable dans une application Java
- Recherche géospatiale
- Gestion automatisée des clusters importants au travers de Apache ZooKeeper
- Regroupement des résultats par les valeurs d'un champ 4
- Auto-suggestion
