適用於:
Databricks 執行環境 18.0 及以後版本
將兩個相容的整數 KLL 草圖合併成一個草圖。
語法
kll_sketch_merge_bigint ( sketch1, sketch2 )
Arguments
-
sketch1:包含BINARY序列化整數 KLL 草圖的表達式。 -
sketch2:包含BINARY序列化整數 KLL 草圖的表達式。
退貨
包含合併草圖的BINARY 值。
註釋
- 兩個草圖必須是相同的資料型態(整數)。
- 合併後的草圖與輸入草圖的 k 參數相同。
- 不同 k 值的草圖無法合併。
- 對於分散式聚合很有用:每個分割區建立草圖,然後合併。
範例
-- Merge sketches from different data partitions
-- Use merged sketch for quantile estimation across all data
> WITH partition1 AS (
SELECT kll_sketch_agg_bigint(value) AS sketch FROM VALUES (1), (2) AS T(value)
),
partition2 AS (
SELECT kll_sketch_agg_bigint(value) AS sketch FROM VALUES (3), (4) AS T(value)
),
merged AS (
SELECT kll_sketch_merge_bigint(p1.sketch, p2.sketch) AS sketch
FROM partition1 p1, partition2 p2
)
SELECT kll_sketch_get_quantile_bigint(sketch, 0.5) FROM merged
2