Sdílet prostřednictvím


dcount_hll()

Vypočítá odlišný počet od výsledků vygenerovaných nástrojem hll nebo hll_merge.

Přečtěte si o základním algoritmu (HyperLogLog) a o přesnosti odhadu.

Syntax

dcount_hll(hll)

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Typ Vyžadováno Popis
hll string ✔️ Výraz vygenerovaný pomocí hll nebo hll-merge , který se použije k vyhledání jedinečného počtu.

Návraty

Vrátí jedinečný počet jednotlivých hodnot v hll.

Příklad

Následující příklad ukazuje jedinečný počet sloučených výsledků.

StormEvents
| summarize hllRes = hll(DamageProperty) by bin(StartTime,10m)
| summarize hllMerged = hll_merge(hllRes)
| project dcount_hll(hllMerged)

Výstup

dcount_hll_hllMerged
315

Přesnost odhadu

Tato funkce používá variantu algoritmu HyperLogLog (HLL), který provádí stochastický odhad kardinality sady. Algoritmus poskytuje "knoflík", který lze použít k vyvážení přesnosti a doby provádění na velikost paměti:

Přesnost Chyba (%) Počet položek
0 1.6 212
1 0.8 214
2 0.4 216
3 0,28 217
4 0.2 218

Poznámka

Sloupec "počet položek" je počet čítačů 1 bajtů v implementaci HLL.

Algoritmus obsahuje některá ustanovení pro provedení dokonalého počtu (nulová chyba), pokud je nastavená kardinalita dostatečně malá:

  • Pokud je 1úroveň přesnosti , vrátí se 1 000 hodnot.
  • Pokud je 2úroveň přesnosti , vrátí se 8000 hodnot.

Vázaná chyba je pravděpodobnostní, nikoli teoretická. Hodnota je směrodatná odchylka rozdělení chyb (sigma) a 99,7 % odhadů bude mít relativní chybu nižší než 3 x sigma.

Následující obrázek znázorňuje funkci rozdělení pravděpodobnosti chyby relativního odhadu v procentech pro všechna podporovaná nastavení přesnosti:

Graf znázorňující distribuci chyb HLL