3

使ったほうがいいですか

  • Lucene の多数のインデックス (たとえば、アプリケーションで許可されているすべてのユーザー用)
  • または1つだけ、すべてのドキュメントをintにします

... 考えてみれば:

  • パフォーマンス
  • ディスクスペース
  • 健康

I am using elasticsearch, therefore I am using Lucene.

4

1 に答える 1

5

Elastic Search では、あなたの情報に基づいて、1 つのインデックスを使用すると思います。私の理解では、ユーザーは自分のドキュメントのみを検索しており、ドキュメントは比較的似ているようです。

パフォーマンス- 検索時に、フィルタ クエリを使用して、ユーザーに一致するドキュメントのみをフィルタリングできます。ユーザー ID フィルターはキャッシュ可能で高速です。

スケーラブル- Elasticsearch では、シャーディングとレプリケーションをインデックス レベルで制御します。Elasticsearch は多数のインデックスを処理できます。適切なシャードとレプリケーションを構成することは、インデックス全体にとって価値があると思います。

単一のインデックスでは、データを簡単に消去でき (「クエリによる削除」を参照)、クエリを間違って記述しない限り、他のデータが表示される心配はほとんどありません。ユーザー ID に関連付けられたもののみに結果をフィルター処理するフィルター処理されたクエリは非常に単純です。複雑さは、ユーザーごとに異なるインデックスを検索する場合と同様です。

あなたの正確なニーズは、別のアプローチにより適しているかもしれません。私がこれまでに持っているものに基づいて、私は1つのインデックスを選択します.

于 2011-12-22T21:48:19.690 に答える