Итак, у меня есть индекс с двумя полями userid
и имя_банка. Каждый раз, когда пользователь получает новый банковский счет, добавляется значение с userid
и именем банка, в котором пользователь открыл счет. Я должен использовать kibana
и elasticsearch
для создания визуализации (скажем, круговой диаграммы), которая отображает все количество пользователей, имеющих более 2 (или 4 это может изменить) банковских счетов в одном и том же названии банка.
Я попытался создать вложенные сегменты, но это дает две вещи: первая показывает общее количество названий банков, разделенных по их стоимости, а вторая показывает, сколько раз у каждого пользователя была учетная запись в этом банке. Я искал вокруг и думаю, что должен использовать sub_doc_count где-то в aggs, но не могу понять, где и как это сделать.
Так, например, для следующих данных:
[{
"_id": 10001,
"userid": 0,
"bank_name": "xyz bank",
"date": "2019-01-23"
},
{
"_id": 10002,
"userid": 0,
"bank_name": "abc bank",
"date": "2019-01-29"
},
{
"_id": 10003,
"userid": 1,
"bank_name": "xyz bank",
"date": "2019-01-31"
},
{
"_id": 10004,
"userid": 2,
"bank_name": "def bank",
"date": "2019-02-02"
},
{
"_id": 10005,
"userid": 2,
"bank_name": "abc bank",
"date": "2019-02-03"
},
{
"_id": 10006,
"userid": 1,
"bank_name": "xyz bank",
"date": "2019-02-10"
},
{
"_id": 10007,
"userid": 1,
"bank_name": "abc bank",
"date": "2019-02-14"
},
{
"_id": 10008,
"userid": 0,
"bank_name": "abc bank",
"date": "2019-02-20"
},
{
"_id": 10009,
"userid": 0,
"bank_name": "xyz bank",
"date": "2019-02-20"
}]
Таким образом, для вышесказанного следует получить круговую диаграмму только с двумя пользователями: 0 и 1 с 0, имеющим счет # 2, и 1, имеющим счет # 1 с точки зрения метрики. Пользователь 2 не будет включен, поскольку оба банковских счета двух уникальны или никогда не повторяются.