Функции quantile digest#
Структуры данных#
Quantile digest — это структура-скетч данных, которая хранит приблизительную
информацию о процентилях. Тип Trino для этой структуры данных называется
qdigest и принимает параметр, который должен быть одним из bigint, double
или real; эти типы представляют набор чисел, которые могут быть добавлены в
qdigest. Их можно объединять без потери точности, а для хранения и
извлечения выполнять приведение к/из VARBINARY.
Функции#
- merge(qdigest) qdigest
Объединяет все входные
qdigestв одинqdigest.
- value_at_quantile(qdigest(T), quantile) T#
Возвращает приблизительное значение процентиля из quantile digest для числа
quantileмежду 0 и 1.
- quantile_at_value(qdigest(T), T) quantile#
Возвращает приблизительное число
quantileмежду 0 и 1 из quantile digest для заданного входного значения. Возвращается null, если quantile digest пустой или входное значение находится вне диапазона quantile digest.
- values_at_quantiles(qdigest(T), quantiles) -> array(T)#
Возвращает приблизительные значения процентилей в виде массива для заданного входного quantile digest и массива значений между 0 и 1, которые представляют возвращаемые квантили.
- qdigest_agg(x) -> qdigest([same as x])#
Возвращает
qdigest, который состоит из всех входных значенийx.
- qdigest_agg(x, w) -> qdigest([same as x])
Возвращает
qdigest, который состоит из всех входных значенийxс использованием весаwдля каждого элемента.
- qdigest_agg(x, w, accuracy) -> qdigest([same as x])
Возвращает
qdigest, который состоит из всех входных значенийxс использованием весаwдля каждого элемента и максимальной погрешностиaccuracy.accuracyдолжно быть значением больше нуля и меньше единицы, и оно должно быть постоянным для всех входных строк.