hll_merge() (funkcja agregacji)
Dotyczy: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Scala wyniki HLL w grupie w jedną wartość HLL.
Uwaga
Nie można scalić wartości hll utworzonych przy użyciu różnych wartości dokładności. Aby uzyskać więcej informacji, zobacz hll().
Uwaga
Ta funkcja jest używana w połączeniu z operatorem podsumowania.
Aby uzyskać więcej informacji, zobacz algorytm bazowy (HyperL ogLog) i dokładność szacowania.
Ważne
Wyniki hll(), hll_if() i hll_merge() można przechowywać i pobierać później. Możesz na przykład utworzyć codzienne, unikatowe podsumowanie użytkowników, które następnie może służyć do obliczania liczby tygodni. Jednak dokładna reprezentacja binarna tych wyników może ulec zmianie w czasie. Nie ma gwarancji, że te funkcje będą produkować identyczne wyniki dla identycznych danych wejściowych i dlatego nie zalecamy polegania na nich.
Składnia
hll_merge
(
Hll)
Dowiedz się więcej na temat konwencji składni.
Parametry
Nazwisko | Type | Wymagania | opis |
---|---|---|---|
Hll | string |
✔️ | Nazwa kolumny zawierająca wartości HLL do scalenia. |
Zwraca
Funkcja zwraca scalone wartości HLL hll w grupie.
Napiwek
Użyj funkcji dcount_hll, aby obliczyć dcount
funkcje agregacji z hll() i hll_merge().
Przykład
W poniższym przykładzie przedstawiono wyniki HLL w grupie scalonej z pojedynczą wartością HLL.
StormEvents
| summarize hllRes = hll(DamageProperty) by bin(StartTime,10m)
| summarize hllMerged = hll_merge(hllRes)
Wyjście
Wyniki pokazują tylko pięć pierwszych wyników w tablicy.
hllMerged |
---|
[[1024,14],["-6903255281122589438","-7413697181929588220","-2396604341988936699","5824198135224880646","-6257421034880415225", ...],[]] |
Dokładność szacowania
Ta funkcja używa wariantu algorytmu HyperLogLog (HLL), który wykonuje stochastyczne oszacowanie kardynalności zestawu. Algorytm udostępnia "pokrętło", które może służyć do równoważenia dokładności i czasu wykonywania na rozmiar pamięci:
Dokładność | Błąd (%) | Liczba pozycji |
---|---|---|
0 | 1.6 | 212 |
1 | 0,8 | 214 |
2 | 0,4 | 216 |
3 | 0,28 | 217 |
100 | 0,2 | 218 |
Uwaga
Kolumna "liczba wpisów" jest liczbą liczników 1 bajtów w implementacji HLL.
Algorytm zawiera pewne przepisy dotyczące wykonywania doskonałej liczby (błąd zerowy), jeśli kardynalność zestawu jest wystarczająco mała:
- Gdy poziom dokładności to
1
, zwracane są wartości 1000 - Gdy poziom dokładności to
2
, zwracane są wartości 8000
Granica błędu jest probabilistyczna, a nie teoretyczna granica. Wartość jest odchyleniem standardowym rozkładu błędów (sigma), a 99,7% oszacowań będzie miało względny błąd poniżej 3 x sigma.
Na poniższej ilustracji przedstawiono funkcję rozkładu prawdopodobieństwa błędu szacowania względnego w procentach dla wszystkich obsługiwanych ustawień dokładności: