timeSeriesMaxToGrid
Добавлена в: v26.9.0 Агрегатная функция, которая принимает данные временных рядов в виде пар временных меток и значений и вычисляет по ним аналог max_over_time из PromQL на регулярной временной сетке, заданной начальной и конечной временными метками и шагом. Для каждой точки сетки результатом является максимальное значение среди образцов в пределах заданного временного окна. Образцы можно передавать в одной из трёх форм:- в виде двух аргументов
timestampиvalue, где каждая строка содержит один образец; - в виде двух массивов временных меток и значений, где каждая строка содержит целый временной ряд;
- в виде одного массива кортежей
(timestamp, value), где каждая строка содержит целый временной ряд.
Эта функция находится на стадии закрытой предварительной версии. Чтобы включить её, установите
enable_time_series_aggregate_functions=true.start_timestamp— Задаёт начало сетки. Также может быть дробным числом или строкой, содержащей число либо дату и время в текстовом виде.UInt32илиDateTimeилиDateTime64илиFloat*илиDecimal*илиStringend_timestamp— Задаёт конец сетки. Также может быть дробным числом или строкой, содержащей число либо дату и время в текстовом виде.UInt32илиDateTimeилиDateTime64илиFloat*илиDecimal*илиStringgrid_step— Задаёт шаг сетки в секундах. Также может быть дробным числом или строкой, содержащей число либо длительность, например ’15s’ или ‘1m’.UInt32илиFloat*илиDecimal*илиStringstaleness— Задаёт максимальную «давность» учитываемых образцов в секундах. Окно давности представляет собой интервал, открытый слева и закрытый справа. Также может быть дробным числом или строкой, содержащей число либо длительность, например ’15s’ или ‘1m’.UInt32илиFloat*илиDecimal*илиString
timestamp— Временная метка образца. Может передаваться в виде отдельных значений или массивов.UInt32илиDateTimeилиDateTime64илиArray(UInt32)илиArray(DateTime)илиArray(DateTime64)value— Значение временного ряда, соответствующее временной метке. Может передаваться в виде отдельных значений или массивов.Float*илиArray(Float*)samples— Образцы временного ряда, передаваемые в виде массива Tuple(timestamp, value), где элементы Tuple имеют указанные выше типы временной метки и значения. Используется как альтернатива передаче временных меток и значений двумя отдельными аргументами.Array(Tuple(T1, T2))
value. Возвращаемый массив содержит по одному значению для каждой точки временной сетки. Если для какой-либо точки сетки в окне нет образцов, значение равно NULL. Array(Nullable(Float*))
Примеры
Вычисление значений max_over_time на сетке [90, 105, 120, 135, 150, 165, 180, 195, 210, 225]
Query
Response
Query
Response