0

私は Apache Lucene を学んでおり、インデックスのパフォーマンスに関するいくつかのクエリがあります。

  1. データベースのデータに基づいてインデックスを構築しています。データベースのスキーマは Lucene ドキュメントのスキーマです。
  2. 検索に応答する方法は 2 つあります。最初はインデックスを検索し、インデックスで値を応答します。それ以外の場合は、インデックスを検索し、結果の id (テーブルの主キー) を取得して、データベースにクエリを実行します。前者の場合、Index.Store.Yes を使用して値を取得できるように、テーブルの値をインデックスに格納する必要があります。後者の場合、データのインデックスを作成し、Index.Store を使用してデータを格納する必要はありません。いいえ、インデックスは大きくなりません。
  3. 前者の手法を使用すると (すべての値を保存してインデックスを検索する) パフォーマンスに影響するか、インデックスを検索してデータベースにクエリを実行する (すべての値を保存することにより) パフォーマンスに影響します。
  4. どちらが最善のアプローチですか、または上記の問題に対する他の解決策はありますか
4

2 に答える 2

1

巨大なデータセットを使用する場合は、通常、インデックスをできるだけ軽くして、説明したようにデータベースにクエリを実行する方がよいでしょう。ただし、データセットが小さい場合は、それらも保存してください...

于 2012-07-26T09:11:07.603 に答える