Verwenden von HyperLogLog Skizzen in Amazon Redshift - Amazon Redshift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwenden von HyperLogLog Skizzen in Amazon Redshift

HyperLogLog ist ein Algorithmus, der zur Schätzung der Kardinalität eines Multisets verwendet wird. Kardinalität bezieht sich auf die Anzahl der einzelnen Werte in einer Multimenge. Zum Beispiel: In der Menge {4,3,6,2,2,6,4,3,6,2,2,3} ist die Kardinalität 4, da die einzelnen Werte 4, 3, 6 und 2 sind.

Die Genauigkeit des HyperLogLog Algorithmus (auch als M-Wert bezeichnet) kann sich auf die Genauigkeit der geschätzten Kardinalität auswirken. Während der Kardinalitätsschätzung verwendet Amazon Redshift einen Standardgenauigkeitswert von 15. Bei kleineren Datensätzen ist ein Wert von bis zu 26 möglich. Die durchschnittliche relative Fehlerquote liegt also zwischen 0,01 und 0,6 %.

Bei der Berechnung der Kardinalität einer Mehrfachmenge generiert der HyperLogLog Algorithmus ein Konstrukt, das als HLL-Skizze bezeichnet wird. HLL-Skizzen kapseln Informationen zu den unterschiedlichen Werte in einem Multiset. Der Amazon-Redshift-Datentyp HLLSKETCH repräsentiert diese Skizzenwerte. Der Datentyp kann verwendet werden, um Skizzen in einer Amazon-Redshift-Tabelle zu speichern. Darüber hinaus unterstützt Amazon Redshift Vorgänge, die als Aggregation- und Skalarfunktionen auf HLLSKETCH-Werte angewendet werden können. Mit diesen Funktionen können Sie die Kardinalität einer HLLSKETCH extrahieren und mehrere HLLSKETCH-Werte kombinieren.

Der Datentyp HLLSKETCH bietet erhebliche Abfrageleistungsvorteile beim Extrahieren der Kardinalität aus großen Datensätzen. Sie können eine Voraggregation dieser Datensätze vornehmen, indem Sie HLLSKETCH-Werte verwenden und diese in Tabellen speichern. Amazon Redshift kann die Kardinalität direkt aus den gespeicherten HLLSKETCH-Werten extrahieren, ohne auf die zugrundeliegenden Datensätze zuzugreifen.

Bei der Verarbeitung von HLL-Skizzen führt Amazon Redshift Optimierungen durch, die den Speicherbedarf der Skizze minimieren und die Genauigkeit der extrahierten Kardinalität maximieren. Amazon Redshift verwendet zwei Darstellungen für HLL-Skizzen, rudimentär und ausführlich. Zu Beginn hat eine HLLSKETCH ein rudimentäres Format. Wenn neue Werte in eingefügt werden, nimmt die Größe zu. Wenn die Größe die Größe der ausführlichen Darstellung erreicht hat, konvertiert Amazon Redshift die Skizze automatisch von rudimentär zu ausführlich.

Amazon Redshift importiert, exportiert und gibt eine HLLSKETCH als JSON aus, wenn die Skizze ein rudimentäres Format hat. Amazon Redshift importiert, exportiert und gibt eine HLLSKETCH als Base64-Zeichenfolge aus, wenn die Skizze ein ausführliches Format hat. Weitere Informationen zu UNLOAD finden Sie unter Entladen des Datentyps HLLSKETCH. Verwenden Sie den COPY-Befehl, um Text- oder CSV-Daten (Comma-Separated Value) in Amazon Redshift zu importieren. Weitere Informationen finden Sie unter Laden des Datentyps HLLSKETCH.

Hinweise zu Funktionen, die mit verwendet werden, finden Sie unter. HyperLogLog HyperLogLog Funktionen