Accueil🇫🇷Chercher

Apache 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, jusqu'à la version 5.0, est exécuté par un conteneur de servlets, comme Tomcat, avant de devenir 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.

Histoire

Le développement de Solr démarre chez CNET Networks sous l'impulsion de Yonik Seeley (créateur du projet) pour améliorer les capacités de recherche de l'entreprise.

Début 2006, CNET Networks décide de rendre le code public et de le confier à la fondation Apache.

En septembre 2008, Solr 1.3 sort avec de nombreuses améliorations, dont la recherche distribuée et des améliorations des performances.

Le , Solr sort en version 1.4 et apporte également un nombre important de nouveautés.

En [3], les projets Lucene et Solr sont fusionnés. Le développement est commun, mais la distribution reste séparée. La numérotation des versions est identique sur les deux projets, Solr 3.1 vient juste après Solr 1.4.1. Avec la version 4.0, publiée en 2012, un tronc commun permet d'avoir une seule version. Elle apporte également des fonctionnalités supplémentaires pour la recherche distribuée. De plus, l'interface d'administration a été revue. La version 5.0, publiée en , apporte des nouveautés fonctionnelles telles que l'OCR (basé sur Tesseract intégré dans Tika 1.7), une meilleure simplicité d'utilisation grâce à de nouveaux scripts d'installation et de démarrage, ainsi que des améliorations liées à Solr Cloud.

En juillet 2019, l'équipe Apache Solr signale une vulnérabilité dans le code, corrigée un mois plus tard. En novembre de la même année, un chercheur en sécurité signale une autre faille importante pour Solr qui est utilisé par Adobe, Bloomberg, eBay, Goldman Sachs, Instagram et Netflix[4].

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 plein texte
  • 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 (en) - Permet la scalabilitĂ© par rapport au volume de documents indexĂ©s
  • Clusterisation des rĂ©sultats de recherche basĂ©e sur Carrot2 (en)
  • MĂ©canisme d'extension par greffon
  • FlexibilitĂ© de la pertinence - boosts avec les function queries
  • Mise en cache - requĂŞtes, filtres et documents
  • Embarquable 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 [5]
  • Auto-suggestion

Voir aussi

Liens externes

Notes et références

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.