Megosztás a következőn keresztül:


dcount_hll()

Kiszámítja a hll vagy hll_merge által létrehozott eredmények eltérő számát.

A mögöttes algoritmusról (HyperLogLog) és a becslés pontosságáról olvashat.

Syntax

dcount_hll( hll)

További információ a szintaxis konvenciókról.

Paraméterek

Név Típus Kötelező Leírás
hll string ✔️ A hll vagy a hll-merge által létrehozott kifejezés, amely a különböző számok megkereséséhez használható.

Válaszok

A hll minden egyes értékének eltérő számát adja vissza.

Példa

Az alábbi példa az egyesített eredmények eltérő darabszámát mutatja.

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

Kimenet

dcount_hll_hllMerged
315

Becslés pontossága

Ez a függvény a HyperLog (HLL) algoritmus egy változatát használja, amely sztochasztikus becslést ad a halmaz számosságáról. Az algoritmus egy "gombot" biztosít, amellyel kiegyensúlyozza a pontosságot és a végrehajtási időt memóriaméretenként:

Pontosság Hiba (%) Bejegyzésszám
0 1.6 212
1 0,8 214
2 0,4 216
3 0,28 217
4 0,2 218

Megjegyzés

A "bejegyzésszám" oszlop a HLL-implementáció 1 bájtos számlálóinak száma.

Az algoritmus tartalmaz néhány rendelkezést a tökéletes szám (nulla hiba) elvégzésére, ha a beállított számosság elég kicsi:

  • Ha a pontossági szint , 1a függvény 1000 értéket ad vissza
  • Ha a pontossági szint , 2a függvény 8000 értéket ad vissza

A hibahatár valószínűségi, nem elméleti kötött. Az érték a hibaeloszlás szórása (a szigma), és a becslések 99,7%-a 3 x szigma alatti relatív hibával fog rendelkezni.

Az alábbi képen a relatív becslési hiba valószínűségeloszlási függvénye látható százalékban az összes támogatott pontossági beállítás esetében:

A hll hibaeloszlást ábrázoló grafikon.