Skip to main content

timeSeriesTimestampOfLastToGrid

Добавлено в: v26.10.0 Агрегатная функция, которая принимает данные временных рядов в виде пар временных меток и значений и вычисляет аналог ts_of_last_over_time из PromQL по этим данным на регулярной временной сетке, задаваемой начальной временной меткой, конечной временной меткой и шагом. Для каждой точки сетки результатом является временная метка самого последнего отсчёта в пределах указанного временного окна. Отсчёты можно передать в одной из трёх форм:
  • в виде двух аргументов timestamp и value, где каждая строка содержит один отсчёт;
  • в виде двух массивов — временных меток и значений, где каждая строка содержит весь временной ряд;
  • в виде одного массива значений Tuple (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_window — Задаёт в секундах максимально допустимую давность последнего значения. Также может быть дробным числом или строкой, содержащей число или длительность, например ’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))
Возвращаемое значение Возвращает временные метки самых последних образцов на заданной сетке; тип совпадает с типом timestamp. Возвращаемый массив содержит по одному значению для каждой точки временной сетки. Если для конкретной точки сетки в пределах окна нет ни одного образца, значение равно NULL. Array(Nullable(UInt32)) или Array(Nullable(DateTime)) или Array(Nullable(DateTime64)) Примеры Вычисление значений ts_of_last_over_time на сетке [90, 105, 120, 135, 150, 165, 180, 195, 210]
Query
Response
Тот же запрос с аргументами-массивами
Query
Response
Последнее изменение 14 октября 2026 г.