Перейти к основному содержанию

quantilesTimingWeighted

Добавленный в: v1.1.0 Вычисляет несколько квантилей последовательности числовых данных одновременно на разных уровнях с заданной точностью, с учётом веса каждого элемента последовательности. Эта функция эквивалентна quantileTimingWeighted, но позволяет вычислять несколько уровней квантилей за один проход, что эффективнее, чем вызывать отдельные функции для каждого квантиля. Результат детерминирован (он не зависит от порядка обработки запроса). Функция оптимизирована для работы с последовательностями, описывающими такие распределения, как время загрузки веб-страниц или время отклика backend-соединения. Точность Вычисление выполняется точно, если:
  • Общее количество значений не превышает 5670.
  • Общее количество значений превышает 5670, но время загрузки страницы меньше 1024 мс.
В противном случае результат вычисления округляется до ближайшего значения, кратного 16 мс.
Для вычисления квантилей времени загрузки страниц эта функция эффективнее и точнее, чем quantiles.
Синтаксис
quantilesTimingWeighted(level1, level2, ...)(expr, weight)
Параметры
  • level — Уровни квантилей. Одно или несколько константных чисел с плавающей запятой в диапазоне от 0 до 1. Рекомендуется использовать значения level в диапазоне [0.01, 0.99]. Float*
Аргументы
  • expr — Выражение над значениями столбца, возвращающее число типа Float*. Если в функцию передаются отрицательные значения, поведение не определено. Если значение превышает 30 000 (время загрузки страницы более 30 секунд), оно считается равным 30 000. Float*
  • weight — Столбец с весами элементов последовательности. Вес — это число вхождений значения. UInt*
Возвращаемое значение Массив квантилей указанных уровней в том же порядке, в котором эти уровни были заданы. Array(Float32) Примеры Вычисление нескольких взвешенных квантилей времени
Query
SELECT quantilesTimingWeighted(0.5, 0.99)(response_time, weight) FROM t;
Response
┌─quantilesTimingWeighted(0.5, 0.99)(response_time, weight)─┐
│ [112, 162]                                                │
└───────────────────────────────────────────────────────────┘
См. также
Последнее изменение 10 июня 2026 г.