ElasticSearch で次のことを行う方法が見つかりません。
- ElasticSearch で 2,000,000 個のアイテムのインデックスが作成されています
- MySQL に 30,000 人のプレイヤーが保存されています
すべてのアイテムには属性としてプレイヤーの名前があります。これらのプレーヤーのオンライン ステータスは 15 分ごとに変化し、(当然のことながら) true または false になります。
オンラインプレイヤー向けのアイテムのみを表示できるようにしたいと考えています。
オンライン ステータスは頻繁に変更されるため、アイテムのオンライン ステータスをインデックス化できないと思います。非常に多くのオンライン プレーヤーの ID を取得してフィルターとして使用することはできません。
エラスティックサーチでもプレイヤーをインデックス化するのに役立ちますか? JOIN
別のインデックスである種のことを行うことは可能ですか?
編集: ES でジョインを行う方法を詳しく調べた後、ES でプレーヤーをインデックス化すると、has_child で実際に可能であることがわかりました。タイヤには の方法がありませんがhas_child
、既存の DSL で可能ですか?