Tutoriel Apache Solr : Qu'est-ce que Solr ? Architecture
โก Rรฉsumรฉ intelligent
Apache Solr est un logiciel libre, JavaServeur de recherche basรฉ sur Apache Lucene. Il indexe de grands volumes de donnรฉes textuelles et renvoie des rรฉsultats pertinents via des API REST, offrant la recherche plein texte, le filtrage par facettes, la scalabilitรฉ et des modes de dรฉploiement autonomes et SolrCloud.

Quโest-ce quโApache Solr ?
Apache Solr est une plateforme de serveur de recherche open source รฉcrite en Java langage de la fondation logicielle Apache. Il s'agit d'un moteur de recherche hautement รฉvolutif et prรชt ร รชtre dรฉployรฉ pour gรฉrer un grand volume de donnรฉes centrรฉes sur le texte. L'objectif de l'utilisation d'Apache Solr est d'indexer et de rechercher une grande quantitรฉ de contenu Web et de fournir un contenu pertinent en fonction de la requรชte de recherche.
Apache Solr est un wrapper HTTP basรฉ sur l'API REST autour du moteur de recherche en texte intรฉgral appelรฉ Apache Lucene. Un index inversรฉ est une liste de mots dans laquelle chaque entrรฉe de mot renvoie aux documents dans lesquels elle est stockรฉe. De cette faรงon, vous obtenez tous les documents pour la requรชte de recherche ยซ guru99 ยป avec une simple opรฉration ยซ obtenir ยป.
Histoire d'Apache Solr
- 1999 : Doug Cutting publie Lucรจne
- 2004 : Solr a รฉtรฉ dรฉveloppรฉ au CNET par Yonik Seeley dans le cadre d'un projet interne de l'entreprise.
- 2006 : CNET publie le code source en le faisant don au logiciel Apache Foundation
- 2008 : Solr 1.3 est publiรฉ avec des capacitรฉs de recherche amรฉliorรฉes et des performances amรฉliorรฉes.
- 2010 : Fusion de Lucene et Solr
- 2012 : La version 4.0 de Solr est sortie, avec la nouvelle fonctionnalitรฉ Solr Cloud
- 2016 : sortie de Solr 6.0, qui offre la prise en charge de l'exรฉcution de requรชtes SQL parallรจles
- 2017 : Solr 7.0 a รฉtรฉ publiรฉ, ajoutant un framework de mise ร l'รฉchelle automatique et l'API JSON Facet.
- 2019 : Solr 8.0 a รฉtรฉ publiรฉ avec la prise en charge des documents imbriquรฉs et des expressions de flux amรฉliorรฉes.
- 2021 : Lucene et Solr se sont ร nouveau sรฉparรฉs, et Solr est devenu un projet Apache indรฉpendant de haut niveau.
- 2022 : Solr 9.0 a รฉtรฉ publiรฉ, premiรจre version indรฉpendante de Lucene, avec lโajout de la recherche vectorielle et de la prise en charge de Kubernetes.
- 2026 : Solr 10.0 a รฉtรฉ publiรฉ en tant que derniรจre version majeure.
Caractรฉristiques d'Apache Solr
Voici les fonctionnalitรฉs importantes dโApache Solr :
- รquilibrage de charge automatique
- Interfaces ouvertes basรฉes sur des normes โ XML, JSON et HTTP
- Les recommandations et les suggestions de sorts sont prises en charge
- Prise en charge de la saisie semi-automatique et de la recherche gรฉospatiale
- Sรฉcuritรฉ intรฉgrรฉe pour l'authentification et l'autorisation
- Vous permet d'effectuer une recherche par mot-clรฉ multilingue
- Prรฉdiction de saisie semi-automatique/de saisie anticipรฉe
- Traitement par lots et en streaming
- Crรฉer des modรจles dโapprentissage automatique est facile
- Spรฉcialement optimisรฉ pour le trafic Web ร volume รฉlevรฉ
- Interfaces d'admiration HTML complรจtes
- Prend en charge la configuration avec schรฉma et sans schรฉma
- Recherche et filtrage ร facettes
- Configuration centrale pour l'ensemble Cluster
Termes clรฉs utilisรฉs dans Apache Solr
Maintenant, dans ce didacticiel du moteur de recherche Solr, nous allons dรฉcouvrir les termes clรฉs utilisรฉs dans Apache Solr :
| Terme clรฉ | Description |
|---|---|
| Noyau Solr | Un noyau Solr peut รชtre dรฉfini comme un index de textes et de champs extraits de tous les documents. Une instance Solr peut contenir un ou plusieurs noyaux Solr. Noyau = une instance d'index Lucene associรฉe ร une configuration Solr |
| Instance Solr | L'instance Solr est une instance d'un Solr exรฉcutรฉ dans le Java Machine virtuelle (JVM). En mode autonome, il ne propose qu'une seule instance alors qu'en mode cloud, vous pouvez avoir une ou plusieurs instances. |
| Indexage | L'indexation est une mรฉthode pour ajouter le contenu d'un document ร Solr Index. Apache Solr utilise la technique d'index inversรฉ Apache Lucene. |
| Documents | C'est un groupe de champs et leurs valeurs. Un document est une unitรฉ de donnรฉes de base stockรฉe dans Apache Core. Un noyau Apache peut contenir un ou plusieurs documents. |
| Champ | Le champ est une paire clรฉ-valeur qui stocke les donnรฉes d'un document. La clรฉ spรฉcifie le nom du champ et la valeur contient ses donnรฉes. Un document peut comporter un ou plusieurs champs. Apache Solr utilise ce type de champ pour indexer le contenu du document. |
| API reposantes | Pour communiquer avec Solr, il n'est pas nรฉcessaire d'avoir utilisรฉ Java programmation. Au lieu de cela, Apache Solr fournit prestations reposantes pour communiquer avec lui. Vous pouvez envoyer des documents et recevoir des rรฉsultats dans diffรฉrents formats de fichiers tels que JSON, XML et CSV. |
| Recherche en texte intรฉgral | Solr offre des fonctionnalitรฉs de recherche en texte intรฉgral telles que des jetons, des phrases, la vรฉrification orthographique, la saisie semi-automatique, les caractรจres gรฉnรฉriques, etc. |
| Interface d'administration | Solr offre une interface utilisateur facile ร utiliser, conviviale et dotรฉe de fonctionnalitรฉs. En utilisant l'interface, vous pouvez effectuer des tรขches telles que la gestion des journaux, ajouter, supprimer, mettre ร jour et rechercher des documents. |
| Centrรฉ sur le texte et triรฉ par pertinence | Apache Solr est utilisรฉ pour rechercher des documents texte et les rรฉsultats sont fournis en fonction de la requรชte de l'utilisateur. |
| Nลud | Dans le cloud Solr, chaque instance est appelรฉe nลud. |
| Cluster | Un cluster est un ensemble de nลuds. |
| Collection | Un cluster possรจde un index logique รฉgalement appelรฉ collection. |
| Tesson | Il s'agit d'une petite zone de la collection qui propose des rรฉpliques simples ou multiples de l'index. |
| Rรฉplique | Une rรฉplique est une copie d'un fragment qui s'exรฉcute dans un nลud. |
| Leader | C'est une rรฉplique du fragment, qui envoie les requรชtes du Solr Cloud pour le reste des rรฉpliques. |
Apache Solr Architecture
Maintenant, dans ce didacticiel de recherche Solr, dรฉcouvrons Apache Solr Archistructure :

Apache Solr compromet les composants suivants
Question
L'analyseur de requรชtes traite les requรชtes ร transmettre ร Solr. Il vรฉrifie la syntaxe de votre requรชte afin de dรฉtecter les erreurs. Aprรจs l'analyse, il convertit les requรชtes dans un format compatible avec Lucene.
Gestionnaire de requรชtes
Les requรชtes envoyรฉes ร Apache Solr sont traitรฉes par le gestionnaire de requรชtes. Il peut s'agir d'une requรชte de recherche ou d'une requรชte de mise ร jour d'index. Vous devez sรฉlectionner le gestionnaire de requรชtes en fonction de vos besoins. Pour transmettre une requรชte ร Solr, vous devez associer le gestionnaire ร un contrรดleur spรฉcifique. URL Point final.
Rรฉponse Writer
Un rรฉdacteur de rรฉponses gรฉnรฉrera des sorties formatรฉes pour les requรชtes dโentrรฉe. Il prend en charge divers formats comme XML, JSON, CSV.etc. Vous pouvez avoir diffรฉrents rรฉdacteurs de rรฉponses pour diffรฉrents types de demandes.
Gestionnaire de mise ร jour
Lorsqu'une requรชte de mise ร jour est envoyรฉe ร Apache Solr, elle est traitรฉe par un ensemble de plugins, incluant la signature, la journalisation et l'indexation. Ce processus est appelรฉ processeur de requรชtes de mise ร jour. Le gestionnaire de mises ร jour est รฉgalement responsable des modifications telles que l'ajout ou la suppression d'รฉlรฉments.ping dรฉposรฉ, etc.
Applications Apache Solr
| Application | Utilisation |
|---|---|
| Portail Intranet |
|
| Client fรฉdรฉrรฉ |
|
| Ensembles de donnรฉes d'instruments |
|
| Documents rรฉglementaires |
|
| Intรฉgrรฉ ร l'application PLM |
|
Comment installer Apache Solr ?
รtape 1) Ouvrez le site Web et continuez ร vous abonner
Aller ร cette lien, Cliquez sur ยซ Continuer ร vous abonner ยป.
รtape 2) Cliquez sur Accepter les conditions
Sur la page suivante, cliquez sur Accepter les conditions.
รtape 3) Attendez un peu de temps
Ensuite, attendez un certain temps, puis la demande est acceptรฉe aprรจs un certain temps.
รtape 4) Continuer vers Configuration
Actualisez la page et cliquez sur ยซ Continuer vers la configuration ยป
รtape 5) Continuer ร lancer
Conservez les paramรจtres par dรฉfaut et cliquez sur ยซ Continuer ร lancer ยป.
รtape 6) Conserver les paramรจtres par dรฉfaut
Sur la page suivante, conserver les paramรจtres par dรฉfaut
- Assurez-vous d'avoir le fichier pem de la clรฉ
- Cliquez sur ยซ Lancer ยป
Vous verrez ce message de rรฉussite
รtape 7) Notez le DNS public
Dans la console EC2, notez le DNS public de votre instance
รtape 8) Ouvrir ci-dessous URL
Pour accรฉder ร Solr, il suffit d'utiliser le URL
http://publicdns:8983
dans notre cas, cela devient
http://ec2-18-221-175-53.us-east-2.compute.amazonaws.com:8983
Remarque : Si vous rencontrez des difficultรฉs pour accรฉder ร l'instance, modifiez les rรจgles entrantes et sortantes de votre instance pour autoriser tout le trafic, comme indiquรฉ dans l'exemple de requรชte Solr ci-dessous :
Elasticsearch contre. Apache Solr
| Paramรจtres | Apache Solr | Recherche รฉlastique |
|---|---|---|
| Nature | C'est un projet open source. | Ce n'est pas un projet open source. |
| Statut statique | Statique dans shema.xml | Statique dans elasticsearch.yml |
| Format | XML, CSV, JSON | Uniquement JSON |
| Sommaire | Peut รชtre rechargรฉ pendant l'exรฉcution avec le rechargement de la collection/du noyau | Dรฉfini lors de la crรฉation d'un index/type avec un appel REST |
| Documentation | C'est bien documentรฉ. | Cโest mal documentรฉ. |
| Diviser les fragments | Possible | Pas possible |
Avantages d'Apache Solr
- Vous aide ร rรฉduire le temps nรฉcessaire pour localiser les informations
- C'est un moteur de recherche rapide, simple, puissant et flexible.
- Vous aide ร rendre vos produits et services plus accessibles
- Augmenter les dรฉpenses des clients sur une application Web
- Vous aide ร amรฉliorer l'expรฉrience utilisateur sur l'application Web pour augmenter les revenus et les bรฉnรฉfices
- Interface d'administration complรจte basรฉe sur HTML
- Flexible et adaptable avec la configuration XML
- Plugin extensible Architecture
- Moteur de recherche hautement รฉvolutif, robuste et tolรฉrant aux pannes
- Prend en charge la distribution, l'ombrage, la rรฉplication, Clustering et multi-nลuds Architecture
Inconvรฉnients d'Apache Solr
- Ce n'est pas un magasin de donnรฉes conforme ร l'ACID
- Il n'est pas utile en tant que magasin de donnรฉes principal. Uniquement utile en tant que magasin de donnรฉes secondaire
- N'offre pas de prise en charge des transactions et des transactions distribuรฉes
- Ne prend pas en charge les jointures et les requรชtes complexes
- Pas optimal pour les donnรฉes normalisรฉes










