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