0

数百万の全文ドキュメントを超える SOLR インデックスがあります。これは非常にうまく機能します。ここまでは順調ですね。

ユーザーは、これらのドキュメントをフォルダーまたはコレクションで整理できます。フォルダごとにインデックスを作成せずに、検索を特定のフォルダ (または複数のフォルダ) に制限できるようにしたいと考えています。さまざまな用途でさまざまなフォルダーにドキュメントを保存できます。これは、場所というよりタグのようなものです。

ドキュメントが保存されているフォルダー (またはコレクション) ID の複数値フィールドを追加することで、これを行う予定です。

これはSOLRを使用する「有効な」方法ですか、それとも何か不足していますか? また、複数値フィールドの項目数に関する制限はありますか? また、コレクションを直接サポートする代替検索エンジンも歓迎します。

4

2 に答える 2

1

情報がユーザーごとかどうかは明らかではありません。ユーザーごとにフォルダー情報が必要な場合 (つまり、ユーザー A がドキュメント D をフォルダー F に設定した場合、フォルダー F でドキュメントを探しているユーザー B はそれを見つけられない場合)、ユーザーに関連する情報を保存する必要があります。それも。

user_A、user_B などの動的フィールドを使用して、適切なユーザー フィールドにフォルダー情報を設定することをお勧めします。

編集: わかりました、マークの返信は大丈夫です。fq で「コレクション」を使用することを忘れないでください。これにより、キャッシュされ、他のクエリで再利用されます。

于 2012-07-01T14:29:03.490 に答える
1

特定のドキュメントが属するディレクトリの絶対パスの多値文字列フィールドを用意します。たとえば、ドキュメントは および に属している場合がdocuments/reports/fin/2012ありjohns_stuff/to_readます。

いくつかのクエリ:

documents/reports/fin/2012 <-- belongs to a specific directory
documents/reports/fin* <--any subdirectory of this directory
于 2012-07-03T12:13:08.693 に答える