Skip to main content

timeSeriesSumToGrid

Добавлена в: v26.9.0 Агрегатная функция, которая принимает данные временного ряда в виде пар временных меток и значений и вычисляет по этим данным аналог PromQL-функции sum_over_time на регулярной временной сетке, заданной начальной временной меткой, конечной временной меткой и шагом. Для каждой точки сетки при вычислении суммы учитываются образцы, попадающие в заданное временное окно. Образцы можно передавать в одной из трёх форм:
  • в виде двух аргументов timestamp и value, где каждая строка содержит один образец;
  • в виде двух массивов временных меток и значений, где каждая строка содержит целый временной ряд;
  • в виде одного массива кортежей (timestamp, value), где каждая строка содержит целый временной ряд.
Если у нескольких образцов совпадают временные метки, используется только один из них — образец с наибольшим значением. Значение NaN проигрывает любому другому значению, поэтому NaN используется только в том случае, если все образцы с этой временной меткой равны NaN.
Эта функция доступна в закрытой предварительной версии. Чтобы включить её, установите enable_time_series_aggregate_functions=true.
Синтаксис
Параметры
  • start_timestamp — Задаёт начало сетки. Также может быть дробным числом или строкой, содержащей число или дату и время в текстовом виде. UInt32 или DateTime или DateTime64 или Float* или Decimal* или String
  • end_timestamp — Задаёт конец сетки. Также может быть дробным числом или строкой, содержащей число или дату и время в текстовом виде. UInt32 или DateTime или DateTime64 или Float* или Decimal* или String
  • grid_step — Задаёт шаг сетки в секундах. Также может быть дробным числом или строкой, содержащей число или длительность, например ’15s’ или ‘1m’. UInt32 или Float* или Decimal* или String
  • staleness — Задаёт максимальную давность (в секундах) учитываемых образцов. Окно давности — это интервал, открытый слева и закрытый справа. Также может быть дробным числом или строкой, содержащей число или длительность, например ’15s’ или ‘1m’. UInt32 или Float* или Decimal* или String
Аргументы
  • timestamp — Временная метка образца. Может передаваться как отдельные значения или как массивы. UInt32 или DateTime или DateTime64 или Array(UInt32) или Array(DateTime) или Array(DateTime64)
  • value — Значение временного ряда, соответствующее временной метке. Может передаваться как отдельные значения или как массивы. Float* или Array(Float*)
  • samples — Образцы временного ряда в виде массива Tuple (timestamp, value), элементы которых имеют указанные выше типы временной метки и значения. Альтернатива передаче временных меток и значений двумя отдельными аргументами. Array(Tuple(T1, T2))
Возвращаемое значение Возвращает сумму значений на заданной сетке. Возвращаемый массив содержит по одному значению для каждой точки временной сетки. Если для точки сетки в окне нет ни одного образца, значение равно NULL. Array(Nullable(Float64)) Примеры Базовое использование с отдельными парами «временная метка — значение»
Query
Response
Использование массивов в качестве аргументов
Query
Response
Последнее изменение 14 октября 2026 г.