0

richardwilly98による川を使用して、MongoDB データベースにインデックスを付ける ElasticSearch インスタンスがあります。

索引付けされる文書には、次の 2 つのタイプがあります。

  • ユーザーを参照するドキュメント
  • ユーザーを表す文書

これらのオブジェクトが mongodb richardwilly98 のriverに追加されると、次のようなものが生成されます。

  • document = {'user': {"$id" : "5159a004c87126641f4f9530" } }
  • user_document = {'_id':"5159a004c87126641f4f9530",'username':'bob'}

「bob」を検索すると、bob ドキュメントを参照するすべてのドキュメントが返されます。とにかく、ユーザー名フィールドは参照元のドキュメントに関連していないため、現時点ではこれは発生しません。

これを行うことは可能ですか?ElasticSearch にはオブジェクト参照がありますか?

ありがとう - はっきりしていない場合はお知らせください。

4

2 に答える 2

2

各ドキュメントが複数のユーザーに属していない場合は、ドキュメントをユーザーのとしてインデックス化できます。次に、has_parentフィルターを使用して検索を実行できます。ただし、1 つのドキュメントが複数のユーザーに属する可能性がある場合は、2 つの手順で検索を実行する必要があります。最初にユーザーを見つけてから、別の検索を発行してドキュメントを見つける必要があります。

于 2013-04-02T10:37:30.677 に答える