Значительная агрегация терминов по полю списка против себя - PullRequest
3 голосов
/ 23 декабря 2019

У меня есть документы следующего формата:

{ "my_field": ["foo", "bar", "baz"] }
{ "my_field": ["foo", "baz"] }
{ "my_field": ["foo", "bar"] }

Я хотел бы выяснить, какие пары my_field терминов встречаются чаще всего вместе. Я попытался использовать агрегацию significant_terms, например:

{
    "aggs": {
        "fields": {
            "terms": {"field": "my_field"},
            "aggs": {
                "significant_pairs_with": {
                    "significant_terms": {"field": "my_field"}
                }
            }
        }
    }
}

. Это прекрасно работает, если не считать самого высокого результата в каждой агрегации - дубликата родительского результата, например, "foo" всегда отображается с "foo". Есть ли способ отфильтровать это? Или мне нужно другое агрегирование?

...