mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-12-02 12:32:04 +00:00
c1b71ab06e
* CLICKHOUSEDOCS-733: Fixed some broken links. Updated introduction and TOC in aggregate functions. * CLICKHOUSEDOCS-733: Fixed files endings. * CLICKHOUSEDOCS-733: Returned the list of functions back to reference index. Co-authored-by: Sergei Shtykov <bayonet@yandex-team.ru> Co-authored-by: emironyuk <em@don.ru>
2.7 KiB
2.7 KiB
toc_priority |
---|
194 |
uniqHLL12
Вычисляет приблизительное число различных значений аргументов, используя алгоритм HyperLogLog.
uniqHLL12(x[, ...])
Параметры
Функция принимает переменное число входных параметров. Параметры могут быть числовых типов, а также Tuple
, Array
, Date
, DateTime
, String
.
Возвращаемое значение
- Значение хэша с типом данных UInt64.
Детали реализации
Функция:
-
Вычисляет хэш для всех параметров агрегации, а затем использует его в вычислениях.
-
Использует алгоритм HyperLogLog для аппроксимации числа различных значений аргументов.
Используется 212 5-битовых ячеек. Размер состояния чуть больше 2.5 КБ. Результат не точный (ошибка до ~10%) для небольших множеств (<10K элементов). Однако для множеств большой кардинальности (10K - 100M) результат довольно точен (ошибка до ~1.6%). Начиная с 100M ошибка оценки будет только расти и для множеств огромной кардинальности (1B+ элементов) функция возвращает результат с очень большой неточностью.
-
Результат детерминирован (не зависит от порядка выполнения запроса).
Мы не рекомендуем использовать эту функцию. В большинстве случаев используйте функцию uniq или uniqCombined.