Maison  >  Article  >  base de données  >  Comment indexer la base de données MySql à l’aide de Solr ?

Comment indexer la base de données MySql à l’aide de Solr ?

黄舟
黄舟original
2017-08-03 09:18:181659parcourir

L'article précédent a présenté le déploiement de l'analyseur de mots intégré solr4.10 et solr4.10 dans Tomcat, nous allons maintenant présenter comment configurer Solr pour indexer les données de la base de données MySQL, afin de réaliser la requête de. la base de données MySQL.

Tout d'abord, téléchargez le package jar nécessaire pour vous connecter à MySQL. Ce que j'ai téléchargé est : mysql-connector-java-5.1.26-bin.jar.

1. Il est supposé que les travaux liés à la base de données MySQL tels que la base de données, la table, la définition de champ, etc. ont été terminés à l'avance. Voici une introduction à la base de données utilisée dans mon scénario de test : les noms de la base de données et des tables sont crawler, le nom d'utilisateur est root et le mot de passe est admin. Les instructions SQL ne sont pas répertoriées ici, c'est quand même un test. De plus, comme le chemin de décompression de Solr et le chemin de Solr_HOME sont différents pour chacun, j'utiliserai $SOLR_HOME pour représenter le chemin de Solr_HOME à l'avenir.

Comment indexer la base de données MySql à l’aide de Solr ?

2. Utilisez DataImportHandler pour importer et indexer les données

Configurer $SOLR_HOMEcollection1confsolrconfig.xml

Ajoutez un gestionnaire de traitement d'importation de données devant , comme le montre la figure :

Parmi eux, data- config Le fichier .xml est utilisé pour définir la relation de mappage entre solr et MySQL. Le chemin relatif est utilisé ici, qui se trouve dans le même répertoire que solrconfig.xml. Par conséquent, créez le fichier data-config.xml dans le répertoire $SOLR_HOMEcollection1conf

Comment indexer la base de données MySql à l’aide de Solr ?

3. Complétez Solr et MySQL via data-config. xml Le mappage de la base de données, le contenu du fichier data-config.xml est comme indiqué dans la figure :

Comment indexer la base de données MySql à l’aide de Solr ?


4.Modifiez le fichier schema.xml, car ce fichier a été copié à partir du package compressé et contient beaucoup de données redondantes. Ici, il suffit de le faire. définir et Pour les champs associés dans la table de la base de données MySQL, supprimez simplement les champs non pertinents, mais il convient de noter que certains champs doivent encore être conservés, tels que : _version_ et texte. Ces deux champs doivent être conservés, ainsi que d'autres champs et CopyFields. peut être supprimé : comme l'illustration.

Dans l'image ci-dessus, mon identifiant est défini comme type int. Par défaut, la clé primaire de l'index dans Solr ne prend en charge que le type de chaîne type="string". Solution : Modifiez elevate.xml dans le même répertoire et commentez les 2 lignes suivantes.

Comment indexer la base de données MySql à l’aide de Solr ?

Comment indexer la base de données MySql à l’aide de Solr ?

5. Ajoutez mysql-connector-java-5.1.26-bin.jar et solr-4.10.3distsolr- dataimporthandler-4.10.3.jar est copié dans D:Solrsolr-4.10.3examplesolr-webappwebappWEB-INFlib.


6. Ouvrez Tomcat et entrez dans l'interface de l'interface utilisateur d'administration de Solr, sélectionnez collection1 dans le sélecteur principal et sélectionnez le sous-menu dataImport. . Comme le montre l'image.

Après avoir terminé les réglages, cliquez sur Exécuter.

Comment indexer la base de données MySql à l’aide de Solr ?

7 Pour tester les requêtes, sélectionnez Requête dans le sous-menu situé sous le sélecteur principal et saisissez le contenu : Xi Jinping dans le champ. q case, cliquez ci-dessous et vous obtiendrez les résultats de la requête


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn