quantileGK
Вычисляет квантили числовой последовательности данных с использованием алгоритма Гринвальда-Ханны. Алгоритм Гринвальда-Ханны используется для вычисления квантилей в потоке данных с высокой эффективностью. Он был представлен Майклом Гринвальдом и Сантивом Ханной в 2001 году. Широко используется в базах данных и системах больших данных, где необходимо вычисление точных квантилей на большом потоке данных в реальном времени. Алгоритм обладает высокой эффективностью, требует только O(log n) места и O(log log n) времени на элемент (где n — размер входных данных). Он также высокоточен, обеспечивая приближенное значение квантиля с высокой вероятностью.
quantileGK
отличается от других функций квантилей в ClickHouse тем, что позволяет пользователю контролировать точность приближенного результата квантиля.
Синтаксис
Псевдоним: medianGK
.
Аргументы
-
accuracy
— Точность квантиля. Положительное целое число. Большое значение точности означает меньшую ошибку. Например, если аргумент точности установлен на 100, вычисленный квантиль будет иметь ошибку не более 1% с высокой вероятностью. Существует компромисс между точностью вычисленных квантилей и вычислительной сложностью алгоритма. Большая точность требует больше памяти и вычислительных ресурсов для точного вычисления квантиля, в то время как меньший аргумент точности позволяет быстрее и эффективнее по памяти вычислять, но с несколькими корректировками в точности. -
level
— Уровень квантиля. Необязательный параметр. Положительное дробное число от 0 до 1. Значение по умолчанию: 0.5. Приlevel=0.5
функция вычисляет медиану. -
expr
— Выражение для значений столбца, приводящее к числовым типам данных, Date или DateTime.
Возвращаемое значение
- Квантиль заданного уровня и точности.
Тип:
- Float64 для входных данных типа числовой.
- Date, если входные значения имеют тип
Date
. - DateTime, если входные значения имеют тип
DateTime
.
Пример
Смотрите также