API агрегирования индекса
Агрегирует временной ряд (TSDS) индекса и сохраняет предварительно вычисленные статистические сводки (min, max, sum, value_count и avg) для каждого метрического поля, сгруппированного по заданному интервалу времени. Например, индекс TSDS, содержащий метрики, взятые каждые 10 секунд, можно агрегировать в часовой индекс. Все документы в течение часового интервала сводятся и сохраняются как один документ в индексе агрегирования.
resp = client.indices.downsample(
index="my-time-series-index",
target_index="my-downsampled-time-series-index",
config={
"fixed_interval": "1d"
},
)
print(resp) response = client.indices.downsample(
index: 'my-time-series-index',
target_index: 'my-downsampled-time-series-index',
body: {
fixed_interval: '1d'
}
)
puts response const response = await client.indices.downsample({
index: "my-time-series-index",
target_index: "my-downsampled-time-series-index",
config: {
fixed_interval: "1d",
},
});
console.log(response); POST /my-time-series-index/_downsample/my-downsampled-time-series-index
{
"fixed_interval": "1d"
} См. документацию агрегирования для обзора, подробностей о процессе агрегирования и примеров ручного выполнения агрегирования и как частью политики ILM.
Запрос
POST /<source-index>/_downsample/<output-downsampled-index>
Предварительные условия
- Поддерживаются только индексы в потоке данных временных рядов.
- Если включены функции безопасности Elasticsearch, необходимо иметь право
allилиmanageдоступа к индексам для потока данных. - Нельзя определять безопасность на уровне поля или документа для исходного индекса.
- Исходный индекс должен быть только для чтения (
index.blocks.write: true).
Параметры пути
-
<source-index> - (Необязательно, строка) Имя индекса временного ряда для агрегирования.
-
<output-downsampled_index> -
(Обязательно, строка) Имя создаваемого индекса.
Имена индексов должны соответствовать следующим критериям:
- Только строчные буквы
- Не должно содержать
\,/,*,?,",<,>,|, пробел,,,# - Индексы до версии 7.0 могли содержать двоеточие (
:), но это устарело и не будет поддерживаться в 7.0+ - Не должно начинаться с
-,_,+ - Не должно быть
.или.. - Не должно быть длиннее 255 байт (обратите внимание, это байты, поэтому многобайтовые символы быстрее достигнут лимита 255)
- Имена, начинающиеся с
., устарели, за исключением скрытых индексов и внутренних индексов, управляемых плагинами
Параметры запроса
-
fixed_interval -
(Обязательно, единицы времени) Интервал агрегирования исходного индекса временного ряда. Например,
60mсоздаёт документ для каждого 60-минутного (часового) интервала. Это следует стандартному синтаксису форматирования времени, используемому в Elasticsearch.Меньшие, более дробные интервалы занимают пропорционально больше места.
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/indices-downsample-data-stream.html