hll_if() (função de agregação)

Calcula os resultados intermediários de dcount em registros para os quais o predicado é trueavaliado como .

Leia sobre o algoritmo subjacente (HyperLogLog) e a precisão da estimativa.

Observação

Essa função é usada em conjunto com o operador summarize.

Importante

Os resultados de hll(), hll_if() e hll_merge() podem ser armazenados e recuperados posteriormente. Por exemplo, talvez você queira criar um resumo diário de usuários exclusivos, que pode ser usado para calcular contagens semanais. No entanto, a representação binária precisa desses resultados pode mudar ao longo do tempo. Não há garantia de que essas funções produzirão resultados idênticos para entradas idênticas e, portanto, não aconselhamos confiar nelas.

Syntax

hll_if(expr, predicado [,precisão])

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Tipo Obrigatório Descrição
expr string ✔️ A expressão usada para o cálculo de agregação.
predicate string ✔️ O Expr usado para filtrar registros a serem adicionados ao resultado intermediário de dcount.
Precisão int O valor que controla o equilíbrio entre velocidade e precisão. Se não for especificado, o valor padrão será 1. Para obter valores com suporte, consulte Estimação de precisão.

Retornos

Retorna os resultados intermediários da contagem distinta de Expr para a qual Predicado é trueavaliado como .

Dica

  • Você pode usar a função hll_merge de agregação para mesclar mais de um hll resultado intermediário. Só funciona com hll saída.
  • Você pode usar dcount_hll, para calcular a contagem distinta de hll,hll_merge ou hll_if funções de agregação.

Exemplos

StormEvents
| where State in ("IOWA", "KANSAS")
| summarize hll_flood = hll_if(Source, EventType == "Flood") by State
| project State, SourcesOfFloodEvents = dcount_hll(hll_flood)
Estado SourcesOfFloodEvents
KANSAS 11
IOWA 7

Precisão da estimativa

Precisão Velocidade Erro (%)
0 Mais rápida 1.6
1 Balanced 0,8
2 Lento 0,4
3 Lento 0,28
4 Menor 0,2