Я разделил данные временных рядов на дневные индексы.Допустим, у меня есть 2-дневные индексы.
1) index1 data-timeseries-14-04-2019 :
пример данных:
{{"_id": 1,
"product_name": "mobile1",
"product_id": "12145",
"created_at": "2014-04-14",
"offer_price": 89
},
{"_id": 2,
"product_name": "mobile2",
"product_id": "12146",
"created_at": "2014-04-14",
"offer_price": 70
}
}
2) index2 data-timeseries-15-04-2019 :
{{"_id": 1,
"product_name": "mobile2",
"product_id": "12146",
"created_at": "2014-04-15",
"offer_price": 80
},
{"_id": 2,
"product_name": "mobile1",
"product_id": "12145",
"created_at": "2014-04-15",
"offer_price": 89
}
}
`
Здесь уникальные продукты идентифицируются по их "product_id"
Я хочу написать запрос, показывающий количество продуктов, которые изменили свою цену_предложения.
, пожалуйста, помогите мне.
Я пробовал что-то подобное
{
"aggs": {
"distinct_by_product_id": {
"terms": {
"field": "product_id.keyword",
"min_doc_count": 2,
"size": 10
},
"aggs": {"count_distinct_prices":
{"cardinality": {
"field": "offer_price"
}}
}
}}
}
Сначала примените агрегацию терминов к product_id, а затем найдите отличительный признак no offer_price.если отличное нет больше 1, этот продукт считается вариантом цены.
- Но поскольку я использую термин агрегирование, для большого количества данных я не могу получить все данные о товарах.