hll_merge() (Aggregationsfunktion)
Gilt für: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Führt HLL-Ergebnisse in der gesamten Gruppe in einem einzelnen HLL-Wert zusammen.
Hinweis
Sie können keine hll-Werte zusammenführen, die mit unterschiedlichen Genauigkeitswerten erstellt wurden. Weitere Informationen finden Sie unter hll().
Weitere Informationen finden Sie im zugrunde liegenden Algorithmus (HyperLogL og Log) und der Schätzungsgenauigkeit.
Wichtig
Die Ergebnisse von hll(), hll_if() und hll_merge() können gespeichert und später abgerufen werden. Sie können z. B. eine tägliche eindeutige Benutzerzusammenfassung erstellen, die dann zum Berechnen der wöchentlichen Anzahl verwendet werden kann. Die genaue binäre Darstellung dieser Ergebnisse kann sich jedoch im Laufe der Zeit ändern. Es gibt keine Garantie dafür, dass diese Funktionen identische Ergebnisse für identische Eingaben erzeugen, und daher raten wir nicht davon ab, darauf zu vertrauen.
Syntax
hll_merge
(
Hll)
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
hll | string |
✔️ | Der Spaltenname, der HLL-Werte enthält, die zusammengeführt werden sollen. |
Gibt zurück
Die Funktion gibt die zusammengeführten HLL-Werte von hll in der gesamten Gruppe zurück.
Tipp
Verwenden Sie die dcount_hll-Funktion , um die dcount
Funktionen hll() und hll_merge() zu berechnen.
Beispiel
Das folgende Beispiel zeigt HLL-Ergebnisse in einer Gruppe, die mit einem einzelnen HLL-Wert zusammengeführt wird.
StormEvents
| summarize hllRes = hll(DamageProperty) by bin(StartTime,10m)
| summarize hllMerged = hll_merge(hllRes)
Output
Die Ergebnisse zeigen nur die ersten fünf Ergebnisse im Array an.
hllMerged |
---|
[[1024,14],["-6903255281122589438","-7413697181929588220","-2396604341988936699","5824198135224880646","-6257421034880415225", ...],[]] |
Schätzgenauigkeit
Diese Funktion verwendet eine Variante des HyperLogLog (HLL)-Algorithmus, der eine stochastische Schätzung der Set-Kardinalität durchführt. Der Algorithmus stellt einen „Knopf“ bereit, über den Genauigkeit und Ausführungszeit pro Arbeitsspeichergröße ausgeglichen werden können:
Genauigkeit | Fehler (%) | Entry count |
---|---|---|
0 | 1.6 | 212 |
1 | 0,8 | 214 |
2 | 0,4 | 216 |
3 | 0.28 | 217 |
4 | 0.2 | 218 |
Hinweis
Die Spalte „entry count“ ist die Anzahl von 1-Byte-Leistungsindikatoren in der HLL-Implementierung.
Der Algorithmus enthält einige Vorkehrungen für eine perfekte Anzahl (null Fehler), wenn die festgelegte Kardinalität klein genug ist:
- Wenn die Genauigkeitsgrad
1
ist, werden 1.000 Werte zurückgegeben. - Wenn die Genauigkeitsgrad
2
ist, werden 8.000 Werte zurückgegeben.
Die Fehlerbindung ist probabilistisch und keine theoretische Grenze. Der Wert ist die Standardabweichung der Fehlerverteilung (Sigma), und 99,7 % der Schätzungen weisen einen relativen Fehler von unter 3 x Sigma auf.
Die folgende Abbildung zeigt die Wahrscheinlichkeitsverteilungsfunktion des relativen Schätzfehlers in Prozent für alle unterstützten Genauigkeitseinstellungen: