0

次のようなマッピングがあります。

"mappings": {
    "mydoc": {
        "properties": {
            "event": {
                "type": "nested",
                "properties": {
                    "eventType": {
                        "type": "string"
                    },
                    "idList": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                }
            }
        }
    }
}

mydoc ドキュメントには、ネストされたイベント ドキュメントの配列が含まれています。

mydoc ドキュメント内で、次の場所にあるすべての ID を検索したいと考えています。

  • event.type='A' のイベントが存在し、event.idList に ID X が含まれています
  • event.type='B' で、event.id が X に等しい別のイベントが存在します

インデックス全体で、この基準が保持される ID のリストと、これが発生した mydoc ドキュメントの数の (ID ごとの) カウントが必要です。

ElasticSearchでこれを達成することは可能ですか? ネストされたファセット フィルターまたはターム フィルター ルックアップで可能かもしれないと考えていましたが、これらでそれを行う方法はまだ見ていません。

4

1 に答える 1