共用方式為


kll_sketch_merge_bigint 函數

適用於:勾選是 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