Fiche technique | |
---|---|
Plateforme : | Java |
Auteur : | Apache Software Foundation |
Date de publication : | 2014 à actuellement |
Catégorie : | Moteur de recherche |
Site Web : | https://solr.apache.org/ |
Introduction
Solr est un serveur de recherche basé sur Apache Lucene, une bibliothèque de recherche d'informations open source basée sur Java. Solr est conçu pour piloter de puissantes applications de recherche de documents ou d'analyse impliquant des données non structurées, des données semi-structurées ou un mélange de données non structurées et structurées. Il offre également un support secondaire pour les cas d'utilisation limités liés aux relations, aux graphiques, aux statistiques, à l'analyse de données ou au entreposage. Étant donné que Solr est un logiciel open source sous licence Apache 2.0 conçu pour l'extensibilité, il vous donne la liberté de l'adapter ou de l'optimiser pour presque tous les cas d'utilisation commerciaux ou non commerciaux.
La syntaxe de requête et les analyseurs de Solr offrent une prise en charge de tout, de la recherche par mot-clef la plus simple aux requêtes complexes sur plusieurs champs et aux résultats de recherche à facettes. Le regroupement et le regroupement des résultats offrent des fonctionnalités intéressantes pour le commerce électronique et les vitrines. Les expressions de flux de données vous permettent d'effectuer des analyses sur un corpus entier, un sous-ensemble correspondant à une requête ou un échantillon aléatoire d'un ensemble de documents. Les expressions mathématiques puissantes s'appuient sur des expressions de flux de données pour fournir l'épine dorsale des cas d'utilisation d'analyse avancée et d'analyse prédictive.
Le réglage avancé de la pertinence est également pris en charge ; Solr donne accès à presque toutes les fonctionnalités d'analyse de texte de Lucene, notamment les jetons, la recherche de radicaux, les synonymes et bien plus encore, vous permettant d'ajuster la pertinence en fonction de la connaissance de vos utilisateurs et de votre domaine. Solr permet même de personnaliser la pertinence via l'apprentissage automatique à l'aide de la fonction Learning To Rank.
Les requêtes sont transmises à Solr via des requêtes HTTP 1.1 ou 2.0 et la réponse est généralement une liste de descripteurs de documents structurés. Dans l'exemple classique, 10 descripteurs sont renvoyés, chacun comprenant une URL pour localiser le document (souvent rendu sous la forme de «10 liens bleus»). Cependant, Solr peut aller bien au-delà des localisateurs de documents et de nombreux autres types de métadonnées de document peuvent également être inclus. Les configurations de schéma flexibles permettent d'associer presque n'importe quel type de métadonnées à un document indexé dans Solr.
Le JSON est le format de réponse par défaut, mais il peut également s'agir de XML, CSV, d'un binaire optimisé ou (avec personnalisation) de tout autre format souhaité. Cela signifie qu'une grande variété de clients pourront utiliser Solr. Ces clients peuvent être des applications Web, des navigateurs, des applications client enrichies ou des appareils mobiles. Toute plate-forme capable de HTTP peut communiquer avec Solr. Plusieurs API client sont fournies pour une utilisation dans les langages de programmation courants.
En plus de fournir un moteur accessible au réseau pour la récupération de documents basée sur Lucene, Solr offre la possibilité d'évoluer au-delà des limites d'une seule machine. Les index peuvent être fragmentés et répliqués pour des performances et une fiabilité accrues, en utilisant l'un des deux types d'unité d'allocation Solr. Un type d'unité d'allocation ne nécessite aucune infrastructure de support et les instances sont gérées directement par les administrateurs. Le deuxième type utilise Apache Zookeeper pour coordonner les activités de gestion sur l'ensemble de l'unité d'allocation.
Les fonctionnalités de mise à l'échelle et de haute disponibilité de Solr sont si efficaces que certains des sites Internet les plus importants et les plus célèbres utilisent Solr.