ホームページ  >  記事  >  データベース  >  Solr を使用して MySql データベースにインデックスを付けるにはどうすればよいですか?

Solr を使用して MySql データベースにインデックスを付けるにはどうすればよいですか?

黄舟
黄舟オリジナル
2017-08-03 09:18:181707ブラウズ

前回の記事では、Tomcat での solr4.10 と solr4.10 統合 IK アナライザー ワード セグメンターの導入について紹介しました。次に、MySQL データベースのクエリを実現するために、MySQL データベース データにインデックスを付けるように solr を設定する方法を紹介します。

まず、MySQL に接続するために必要な jar パッケージをダウンロードする必要があります。私がダウンロードしたのは、mysql-connector-java-5.1.26-bin.jar です。

1. データベース、テーブル、フィールド定義などのMySQLデータベース関連の作業が事前に完了していることが前提となります。ここでは、私のテスト ケースで使用したデータベースの紹介を示します。データベースとテーブルの名前はクローラ、ユーザー名は root、パスワードは admin です。 SQL ステートメントはここにはリストされていませんが、とにかくテストです。なお、Solrの解凍パスとSolr_HOMEのパスは人それぞれ異なるため、今後はSolr_HOMEのパスを$SOLR_HOMEとして表現することにします。

Solr を使用して MySql データベースにインデックスを付けるにはどうすればよいですか?

2. DataImportHandler を使用してデータをインポートし、インデックスを付けます

$SOLR_HOMEcollection1confsolrconfig.xml を構成します

の前に追加します。図に示すように、dataimport 処理用のハンドラー:

このうち、data-config.xml ファイルは、solr と MySQL の間のマッピング関係を定義するために使用されます。ここで使用される相対パスは、solrconfig.xml と同じディレクトリです。したがって、$SOLR_HOMEcollection1conf ディレクトリに data-config.xml ファイルを作成します

Solr を使用して MySql データベースにインデックスを付けるにはどうすればよいですか?

3. data-config.xml ファイルの内容を通じて、Solr と MySQL データベース間のマッピングを完了します。

Solr を使用して MySql データベースにインデックスを付けるにはどうすればよいですか?


4.このファイルは圧縮パッケージからコピーされており、多くの冗長データが含まれているため、schema.xml ファイルを変更します。 MySQL データベース テーブルに関連するフィールドはファイル内で定義されているだけです。ただし、_version_ と text などの一部のフィールドは保持する必要があることに注意してください。図に示すように、他のフィールドと CopyField は削除する必要があります。

上の図では、私の ID は int 型として定義されています。デフォルトでは、Solr のインデックスの主キーは type="string" 文字列型のみをサポートしています。解決策: 同じディレクトリ内の elevate.xml を変更し、次の 2 行をコメント化します。

Solr を使用して MySql データベースにインデックスを付けるにはどうすればよいですか?

Solr を使用して MySql データベースにインデックスを付けるにはどうすればよいですか?

5. mysql-connector-java-5.1.26-bin.jar と solr-4.10.3distsolr-dataimporthandler-4.10.3.jar を D:Solrsolr-4.10.3examplesolr-webappwebappWEB にコピーします。 INFlib。


6. 図に示すように、tomcat を開いて Solr の管理 UI インターフェイスに入り、コア セレクターで collection1 を選択し、dataImport サブメニューを選択します。

設定が完了したら、「実行」をクリックします。

Solr を使用して MySql データベースにインデックスを付けるにはどうすればよいですか?

7. クエリ テストの場合、コア セレクターの下のサブメニューで [クエリ] を選択し、[q] ボックスに「内容: Xi Jinping」と入力し、下をクリックするとクエリ結果が表示されます


以上がSolr を使用して MySql データベースにインデックスを付けるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。