ElasticSearch 7.10とelasticsearch -pyを使用しています。
私は 2 つのインデックスを持っています。例のために、それらがchildren
とelves
であると仮定しましょう。次のようなものを想像できます。
PUT /children/1
{
"name": "Peter Parker"
}
PUT /children/2
{
"name": "Doc Ock"
}
PUT /elves/1
{
"bad_children_list": ["Doc Ock", "Venom", "Green Goblin"]
}
PUT /elves/2
{
"bad_children_list": ["Sandman", "Mysterio", "Kingpin"]
}
すべての良い子 (つまり、どの にも表示されないすべての子) を取得できるクエリはありますbad children list
か?
もちろん、この例ではピーター・パーカーだけが良い子です。
実際のアプローチは、バッチごとにメモリ内のドキュメントを取得し、children
「bad_children_list」の値に基づいて繰り返しフィルタリングすることです。もちろん、このアプローチは、あまりにも多くのクエリに依存しているため、効率的でもスケーラブルでもありません。
前もって感謝します。