メインコンテンツへスキップ
メインコンテンツへスキップ

uniqHLL12

HyperLogLog アルゴリズムを使用して、引数に現れる異なる値のおおよその個数を計算します。

uniqHLL12(x[, ...])

引数

この関数は可変個のパラメータを受け取ります。パラメータは TupleArrayDateDateTimeString、または数値型です。

返される値

実装の詳細

関数は次の処理を行います。

  • 集約内のすべてのパラメータに対してハッシュ値を計算し、その値を計算に使用します。

  • HyperLogLog アルゴリズムを使用して、異なる引数値の個数を近似します。

    2^12 個の 5 ビットセルを使用します。状態データのサイズは 2.5 KB をわずかに上回ります。小さいデータセット(<10K 要素)の場合、結果はあまり正確ではありません(誤差は最大で約 10%)。一方で、高カーディナリティのデータセット(10K〜100M)に対しては比較的正確で、最大誤差は約 1.6% です。100M を超えると推定誤差が増加し、極めて高いカーディナリティ(1B+ 要素)のデータセットに対しては非常に不正確な結果を返すようになります。

  • 決定論的な結果を返します(クエリ処理順序に依存しません)。

この関数の使用は推奨しません。ほとんどのケースでは、uniq または uniqCombined 関数を使用してください。

関連項目