Latest
Javadoc使用 HyperLogLog++ 演算法,估計資料串流中不同元素的數量。用於建立和合併草圖,以及從中提取的各個轉換如下:
HllCount.Init
將輸入聚合為 HLL++ 草圖。HllCount.MergePartial
將 HLL++ 草圖合併為新的草圖。HllCount.Extract
從 HLL++ 草圖中提取不同元素的估計計數。
您可以在 https://github.com/google/zetasketch 閱讀更多關於草圖的資訊。
範例
範例 1:為具有自訂精度的 PCollection<Long>
建立長整數型草圖

PCollection<Long> input = ...;
int p = ...;
PCollection<byte[]> sketch = input.apply(HllCount.Init.forLongs().withPrecision(p).globally());
範例 2:為 PCollection<KV<String, byte[]>>
建立位元組型草圖

PCollection<KV<String, byte[]>> input = ...;
PCollection<KV<String, byte[]>> sketch = input.apply(HllCount.Init.forBytes().perKey());
範例 3:將 PCollection<byte[]>
中現有的草圖合併為新的草圖,其中總結了在合併草圖中聚合的輸入的聯集

PCollection<byte[]> sketches = ...;
PCollection<byte[]> mergedSketch = sketches.apply(HllCount.MergePartial.globally());
範例 4:估計 PCollection<String>
中不同元素的計數

PCollection<String> input = ...;
PCollection<Long> countDistinct =
input.apply(HllCount.Init.forStrings().globally()).apply(HllCount.Extract.globally());
範例 5:從現有的草圖中提取不同計數估計值

PCollection<byte[]> sketch = ...;
PCollection<Long> countDistinct = sketch.apply(HllCount.Extract.globally());
上次更新於 2024/10/31
您是否找到您要的所有內容?
所有內容都有用且清晰嗎?您有任何想要變更的內容嗎?請告訴我們!