Partilhar via


kll_sketch_merge_bigint Função

Aplica-se a:marcado com sim Databricks Runtime 18.0, e posteriores

Funde dois esboços KLL inteiros compatíveis num único esboço.

Sintaxe

kll_sketch_merge_bigint ( sketch1, sketch2 )

Arguments

  • sketch1: Uma BINARY expressão contendo um esboço inteiro KLL serializado.
  • sketch2: Uma BINARY expressão contendo um esboço inteiro KLL serializado.

Devoluções

Um BINARY valor contendo o esboço combinado.

Observações

  • Ambos os esboços devem ser do mesmo tipo de dado (inteiro).
  • O esboço fundido tem o mesmo k parâmetro que os esboços de entrada.
  • Esboços com diferentes valores de k não podem ser fundidos.
  • Útil para agregação distribuída: criar esboços por partição e depois mesclar.

Examples

-- 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