Tutoriel Apache Solr : Qu'est-ce que Solr ? Archiconfiguration et installation

Qu’est-ce qu’Apache Solr ?

Apache Solr est une plateforme de serveur de recherche open source écrite en langage Java par le logiciel Apache foundation. Il est hautement évolutif et prêt à déployer un moteur de recherche pour gérer un grand volume de données centrées sur le texte. Le but 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

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 du 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 Solr Core peut être défini comme un index de textes et de champs dérivés de tous les documents. Une instance Solr peut avoir un ou plusieurs cœurs Solr.

Core = une instance de configuration Lucene Index + Solr

Instance Solr L'instance Solr est une instance de Solr exécutée dans la machine virtuelle Java (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 réelles dans un document. La clé spécifie le nom du champ et la valeur contient ces données de champ. Un document peut avoir un ou plusieurs champs. Il est utilisé par Apache Solr pour indexer le contenu du document.
API reposantes Pour communiquer avec Solr, il n'est pas nécessaire d'avoir utilisé la programmation Java. 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.
Grappe 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 Architecture
Apache Solr Architecture

Apache Solr compromet la suitewing composants électriques

Question

L'analyseur de requêtes analyse les requêtes que vous devez transmettre à Solr. Il vérifie votre requête pour vérifier les erreurs syntaxiques. Après avoir analysé les requêtes, cela se traduit dans un format connu de Lucene.

Gestionnaire de requêtes

Les requêtes envoyées à Apache Solr sont traitées par le gestionnaire de requêtes. La requête peut être une requête de requête ou des requêtes 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 mapper le gestionnaire à un point de terminaison d'URL spécifique.

Rédacteur de réponses

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

Lorsque vous envoyez une demande de mise à jour à Apache Solr, elle est exécutée via un ensemble de plugins, de signature, de journalisation et d'indexation. Ce processus est appelé processeur de demande de mise à jour. Gestionnaire de mise à jour également responsable des modifications telles que l'ajout ou la suppression de fichiers, etc.

Applications Apache Solr

Application Utilisation
Portail Intranet
  • Accès facile à la recherche
  • Lancement d'applications
  • Notification d'actualités et d'événements
  • Authentification par connexion unique
Client fédéré
  • Présentation simplifiée
  • Rechercher dans tout le contenu
  • Accès autorisé uniquement
  • Vie de documentwing
Ensembles de données d'instruments
  • Optimisé pour les scientifiques
  • Menus dépendants des données
  • Filtres à grille spécialisés
Documents réglementaires
  • Conçu pour les chercheurs
  • Accès riche aux métadonnées
  • Exportations de feuilles de calcul
  • Afficher l'accélérateur de documents
Intégré à l'application PLM
  • Offre une meilleure expérience de recherche qu’un SGBDR pourrait offrir
  • Modèle de sécurité à liaison tardive
  • Actions de document exposées dans la barre d'outils

Comment installer Apache Solr ?

Étape 1) Ouvrez le site Web et continuez à vous abonner
Aller à cette lien, Cliquez sur « Continuer à vous abonner ».

Installer Apache Solr

Étape 2) Cliquez sur Accepter les conditions
Sur la page suivante, cliquez sur Accepter les conditions.

Installer Apache Solr

Étape 3) Attendez un peu de temps
Ensuite, attendez un certain temps, puis la demande est acceptée après un certain temps.

Installer Apache Solr

Étape 4) Continuer vers Configuration
Actualisez la page et cliquez sur « Continuer vers la configuration »

Installer Apache Solr

Étape 5) Continuer à lancer
Conservez les paramètres par défaut et cliquez sur « Continuer à lancer ».

Installer Apache Solr

É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 »

Installer Apache Solr

Vous verrez ce message de réussite

Installer Apache Solr

Étape 7) Notez le DNS public
Dans la console EC2, notez le DNS public de votre instance

Installer Apache Solr

Étape 8) Ouvrir l'URL ci-dessous
Pour accéder à Solr, utilisez simplement l'URL

http://publicdns:8983

dans notre cas, cela devient

http://ec2-18-221-175-53.us-east-2.compute.amazonaws.com:8983

Installer Apache Solr

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 :

Installer Apache Solr

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 les systèmes distribués, d'ombrage, de réplication, de 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 Complex Requêtes
  • Pas optimal pour les données normalisées

Résumé

  • Apache Solr est un logiciel open source API REST serveur de recherche basé
  • Apache Solr a été développé au CNET par Yonik Seeley dans le cadre d'un projet interne de l'entreprise.
  • Apache Solr offre des fonctionnalités telles que la saisie semi-automatique et la recherche géospatiale
  • Solr Core, Solr Instance, Indexation, Document, Restful API, Recherche en texte intégral, Interface d'administration, etc. sont quelques termes clés utilisés dans Apache Solr.
  • Les requêtes, les gestionnaires de requêtes, les rédacteurs de requêtes et les gestionnaires de mise à jour sont quelques-uns des composants importants d'Apache Solr.
  • Le portail intranet, le client fédéré, les ensembles de données d'instruments, les documents réglementaires, intégrés dans l'application PLM sont des applications Apache Solr utiles.
  • Apache Solr est une composition bien documentéeares à la recherche élastique qui est mal documentée
  • Le plus grand avantage d'Apache Solr est qu'il vous aide à réduire le temps nécessaire à la localisation des informations.
  • Le principal inconvénient de cette application : ce n'est pas un magasin de données conforme à l'ACID.