Elasticsearch показывает сумму одинаковых ключей каждого данных ⇐ Elasticsearch aggregation
-
Anonymous
Elasticsearch показывает сумму одинаковых ключей каждого данных
Кто-нибудь может помочь мне с этой сложной суммой с помощью elasticsearch, так как я искал и пытался несколько дней, но, похоже, ни у кого не было такой же проблемы, как у меня.
допустим, у меня есть пример данных:
[ { "идентификатор": 4, "статус": "черновик", "видео": { "платформы": [ { "имена": "ютуб", "просмотров": 1 }, { "имена": "дейлидвижение", "просмотров": 4 } ] } }, { «идентификатор»: 2, "статус": "опубликовано", "видео": { "платформы": [ { "имена": "ютуб", "просмотров": 2 }, { "имена": "дейлидвижение", "просмотров": 10 } ] } }, { "идентификатор": 1, "статус": "опубликовано", "видео": { "платформы": [ { "имена": "ютуб", "просмотров": 5 }, { "имена": "дейлидвижение", "просмотров": 3 } ] } } ] вот что у меня есть на данный момент:
{ «размер»: 0, "аггс": { "sum_views": { "вложенный": { "path": "video.platforms" }, "аггс": { "platform_terms": { "условия": { "field": "video.platforms.names" }, "аггс": { "platform_sum": { "сумма": { "field": "video.platforms.views" } } } } } } } } но они возвращают только это:
"агрегации": { "sum_views": { «doc_count»: 3, "platform_terms": { "doc_count_error_upper_bound": 0, «sum_other_doc_count»: 0, "ведра": [ { "ключ": "ютуб", «doc_count»: 3, "platform_sum": { «значение»: 8,0 } }, { "ключ": "дейлидвижение", «doc_count»: 3, "platform_sum": { «значение»: 17,0 } } ] } }, Я ищу способ суммировать общее количество просмотров с обеих платформ (отдельно) в каждом статусе. что-то вроде:
[ { "статус": "черновик", "Просмотры": [ { "имена": "ютуб", "просмотров": 1 }, { "имена": "дейлидвижение", "просмотров": 4 } ] }, { "статус": "опубликовано", "Просмотры": [ { "имена": "ютуб", "просмотров": 7 }, { "имена": "дейлидвижение", "просмотров": 13 } ] } ] поэтому они суммируют данные YouTube и Dailymotion, а также группируют их по статусу. Я пробовал агрегировать сумму из elasticsearch, и у меня может быть только сумма всех просмотров с YouTube и Dailymotion отдельно ИЛИ сумма всех просмотров из опубликованных и черновиков. Я не могу найти, как объединить оба условия
Кто-нибудь может помочь мне с этой сложной суммой с помощью elasticsearch, так как я искал и пытался несколько дней, но, похоже, ни у кого не было такой же проблемы, как у меня.
допустим, у меня есть пример данных:
[ { "идентификатор": 4, "статус": "черновик", "видео": { "платформы": [ { "имена": "ютуб", "просмотров": 1 }, { "имена": "дейлидвижение", "просмотров": 4 } ] } }, { «идентификатор»: 2, "статус": "опубликовано", "видео": { "платформы": [ { "имена": "ютуб", "просмотров": 2 }, { "имена": "дейлидвижение", "просмотров": 10 } ] } }, { "идентификатор": 1, "статус": "опубликовано", "видео": { "платформы": [ { "имена": "ютуб", "просмотров": 5 }, { "имена": "дейлидвижение", "просмотров": 3 } ] } } ] вот что у меня есть на данный момент:
{ «размер»: 0, "аггс": { "sum_views": { "вложенный": { "path": "video.platforms" }, "аггс": { "platform_terms": { "условия": { "field": "video.platforms.names" }, "аггс": { "platform_sum": { "сумма": { "field": "video.platforms.views" } } } } } } } } но они возвращают только это:
"агрегации": { "sum_views": { «doc_count»: 3, "platform_terms": { "doc_count_error_upper_bound": 0, «sum_other_doc_count»: 0, "ведра": [ { "ключ": "ютуб", «doc_count»: 3, "platform_sum": { «значение»: 8,0 } }, { "ключ": "дейлидвижение", «doc_count»: 3, "platform_sum": { «значение»: 17,0 } } ] } }, Я ищу способ суммировать общее количество просмотров с обеих платформ (отдельно) в каждом статусе. что-то вроде:
[ { "статус": "черновик", "Просмотры": [ { "имена": "ютуб", "просмотров": 1 }, { "имена": "дейлидвижение", "просмотров": 4 } ] }, { "статус": "опубликовано", "Просмотры": [ { "имена": "ютуб", "просмотров": 7 }, { "имена": "дейлидвижение", "просмотров": 13 } ] } ] поэтому они суммируют данные YouTube и Dailymotion, а также группируют их по статусу. Я пробовал агрегировать сумму из elasticsearch, и у меня может быть только сумма всех просмотров с YouTube и Dailymotion отдельно ИЛИ сумма всех просмотров из опубликованных и черновиков. Я не могу найти, как объединить оба условия
Мобильная версия