Downsamples a time series (TSDS) index and reduces its size by keeping the last value or by pre-aggregating metrics:
- When running in
aggregatemode, it pre-calculates and stores statistical summaries (min,max,sum,value_countandavg) for each metric field grouped by a configured time interval and their dimensions. - When running in
last_valuemode, it keeps the last value for each metric in the configured interval and their dimensions.
For example, a TSDS index that contains metrics sampled every 10 seconds can be downsampled to an hourly index. All documents within an hour interval are summarized and stored as a single document in the downsample index.
NOTE: Only indices in a time series data stream are supported.
Neither field nor document level security can be defined on the source index.
The source index must be read-only (index.blocks.write: true).
POST
/{index}/_downsample/{target_index}
curl \
--request POST 'http://api.example.com/{index}/_downsample/{target_index}' \
--header "Content-Type: application/json" \
--data '"{\n \"fixed_interval\": \"1d\"\n}"'
Request example
{
"fixed_interval": "1d"
}