quantilesTimingWeighted
quantileTimingWeighted, но позволяет вычислять несколько уровней квантилей за один проход, что эффективнее, чем вызывать отдельные функции для каждого квантиля.
Результат детерминирован (он не зависит от порядка обработки запроса). Функция оптимизирована для работы с последовательностями, описывающими такие распределения, как время загрузки веб-страниц или время отклика backend-соединения.
Точность
Вычисление выполняется точно, если:
- Общее количество значений не превышает 5670.
- Общее количество значений превышает 5670, но время загрузки страницы меньше 1024 мс.
Для вычисления квантилей времени загрузки страниц эта функция эффективнее и точнее, чем
quantiles.level— Уровни квантилей. Одно или несколько константных чисел с плавающей запятой в диапазоне от 0 до 1. Рекомендуется использовать значенияlevelв диапазоне[0.01, 0.99].Float*
expr— Выражение над значениями столбца, возвращающее число типа Float*. Если в функцию передаются отрицательные значения, поведение не определено. Если значение превышает 30 000 (время загрузки страницы более 30 секунд), оно считается равным 30 000.Float*weight— Столбец с весами элементов последовательности. Вес — это число вхождений значения.UInt*
Array(Float32)
Примеры
Вычисление нескольких взвешенных квантилей времени
Query
Response