Compartilhar via


kll_sketch_merge_bigint Função

Aplica-se a:com marca de seleção em sim Databricks Runtime 18.0 e posterior

Mescla dois esboços KLL inteiros compatíveis em um único esboço.

Sintaxe

kll_sketch_merge_bigint ( sketch1, sketch2 )

Arguments

  • sketch1: uma BINARY expressão contendo um esboço KLL de número inteiro serializado.
  • sketch2: uma BINARY expressão contendo um esboço KLL de número inteiro serializado.

Devoluções

Um BINARY valor que contém o esboço mesclado.

Anotações

  • Ambos os esboços devem ser para o mesmo tipo de dados (inteiro).
  • O esboço mesclado tem o mesmo parâmetro k que os esboços de entrada.
  • Esboços com valores k diferentes não podem ser mesclados.
  • Útil para agregação distribuída: crie esboços por partição e, em seguida, mescle.

Exemplos

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