Notes d'étude Lucence (1)

table des matières

Introduction à Luence

Introduction à Lucene

Lucene utilise

Scénarios applicables Lucene

Caractéristiques de Lucene

1. Performance d'indice stable et élevée

2. Algorithme de recherche efficace, précis et performant

3. Multiplateforme

Architecture de Luence

Intégration Luence

Version Lucene sélectionnée

Configuration requise

Intégration: introduisez le pot de base lucene dans votre application

Intégration: introduisez le fichier jar du module lucene requis dans votre application

Description du module Lucene

Commencez par introduire le module de base de lucene

Comprendre la composition des modules de base


Introduction à Luence

Introduction à Lucene

Le kit de développement de moteur de recherche en texte intégral open source Java le plus populaire. Fournit un moteur de requête complet et un moteur d'index, une partie du moteur de segmentation de mots de texte (anglais et allemand, deux langues occidentales). Le but de Lucene est de fournir aux développeurs de logiciels une boîte à outils simple et facile à utiliser pour faciliter la réalisation de fonctions de recherche en texte intégral dans le système cible, ou de construire un moteur de recherche complet en texte intégral basé sur cela. C'est un sous-projet d'Apache, site web: http://lucene.apache.org/

Lucene utilise

Fournissez aux développeurs de logiciels une boîte à outils simple et facile à utiliser pour faciliter la réalisation de fonctions de recherche en texte intégral dans le système cible, ou créez un moteur de recherche en texte intégral complet sur cette base.

Scénarios applicables Lucene

  • Fournissez une implémentation de recherche en texte intégral pour les données de la base de données dans l'application.
  • Développer des services et des systèmes de moteurs de recherche indépendants

Caractéristiques de Lucene

1. Performance d'indice stable et élevée

  • Peut indexer plus de 150 Go de données par heure.
  • Petite mémoire requise - seulement 1 Mo de mémoire de tas est requis
  • L'indexation incrémentielle est aussi rapide que l'indexation en bloc.
  • La taille de l'index est d'environ 20% ~ 30% de la taille du texte d'index.

2. Algorithme de recherche efficace, précis et performant

  • Bon tri de recherche.
  • Prise en charge puissante du mode de requête: requête de phrase, requête générique, requête de proximité, requête de plage, etc.
  • Recherche de champ de soutien (comme le titre, l'auteur, le contenu).
  • Peut être trié en fonction de n'importe quel champ, prend en charge la fusion de plusieurs résultats de requête d'index
  • Prise en charge de l'opération de mise à jour et de l'opération de requête en même temps
  • Prise en charge de la mise en évidence, de la participation et du regroupement des résultats
  • haute vitesse
  • Module de tri évolutif, intégré avec modèle d'espace vectoriel, modèle BM25 en option
  • Moteur de stockage configurable

3. Multiplateforme

  • Écrit en pur java.
  • En tant que projet open source sous licence open source Apache, vous pouvez l'utiliser dans des projets commerciaux ou open source.
  • Lucene est disponible dans une variété de versions linguistiques (telles que C, C ++, Python, etc.), pas seulement JAVA.

Architecture de Luence

  1. collecte de données
  2. Créer un index
  3. Stockage d'index
  4. Recherche (utiliser l'index)

Intégration Luence

Version Lucene sélectionnée

Choisissez la dernière version actuelle 7.3.0: https://lucene.apache.org/

Configuration requise

JDK1.8 et supérieur

Intégration: introduisez le pot de base lucene dans votre application

Méthode 1: Téléchargez le zip depuis le site officiel, décompressez et copiez le fichier jar dans votre projet

Méthode 2: Maven introduit des dépendances

Intégration: introduisez le fichier jar du module lucene requis dans votre application

Méthode 1: Téléchargez le zip depuis le site officiel, décompressez et copiez le fichier jar dans votre projet

Méthode 2: Maven introduit des dépendances

Description du module Lucene

  • core: modules de base de la bibliothèque de base Lucene: segmentation de mots, indexation, requête
  • analyseurs- *: tokenizer
  • facette: les capacités d'indexation et de recherche à facettes fournissent des capacités d'indexation de classification et de recherche
  • regroupement: collecteurs pour regrouper les résultats de recherche. Prise en charge du regroupement des résultats de recherche
  • surligneur: met en évidence les mots-clés de recherche dans les résultats
  • join: jointures au moment de l'index et au moment de la requête pour le contenu normalisé 连接 支持
  • requêtes: filtres et requêtes qui ajoutent au cœur de Lucene
  • queryparser: analyseurs de requêtes et module d'analyse des expressions de requête du framework d'analyse
  • spatial: prise en charge de la recherche géospatiale
  • Suggérer: support de suggestion automatique et de vérification orthographique

Commencez par introduire le module de base de lucene

<!-- lucene 核心模块  --> 

<dependency>

    <groupId>org.apache.lucene</groupId>

    <artifactId>lucene-core</artifactId>

    <version>7.3.0</version> 

</dependency>

 

Comprendre la composition des modules de base

 

Je suppose que tu aimes

Origine blog.csdn.net/qq_34050399/article/details/112369053
conseillé
Classement