- Kategorien:
Aggregatfunktionen (Frequency Estimation) , Syntax und Verwendung von Fensterfunktionen
APPROX_TOP_K_COMBINE¶
Kombiniert mehrere Eingabestatus zu einem einzigen Ausgabestatus (d. h. sie werden zusammengeführt).
Dies erlaubt Szenarien, in denen APPROX_TOP_K_ACCUMULATE für horizontale Partitionen derselben Tabelle ausgeführt wird, wodurch für jede Tabellenpartition ein algorithmischer Status erzeugt wird. Anschließend können diese Status mithilfe von APPROX_TOP_K_COMBINE zusammengefasst werden, wodurch derselbe Ausgabestatus erzeugt wird wie bei einer einzelnen Ausführung von APPROX_TOP_K_ACCUMULATE für die gesamte Tabelle.
- Siehe auch:
Syntax¶
Argumente¶
stateEin Ausdruck, der Statusinformationen enthält, die durch einen Aufruf von APPROX_TOP_K_ACCUMULATE generiert wurden.
countersDies ist die maximale Anzahl unterschiedlicher Werte, die sich beim Schätzen gleichzeitig verfolgen lassen. Wenn
countersbeispielsweise auf „100000“ gesetzt ist, verfolgt der Algorithmus 100.000 verschiedene Werte und versucht, die 100.000 häufigsten Werte beizubehalten.Die maximale Anzahl von
countersbeträgt100000(100.000).
Rückgabewerte¶
Dies gibt Informationen über den Zustand der Top K-Berechnung zurück.
This state information is not usually useful by itself, but can be passed to the function APPROX_TOP_K_ESTIMATE.
Nutzungshinweise¶
Wenn
countersdefiniert ist, verwendet der Ausgabestatus die angegebene Anzahl von Zählern.Wenn
countersnicht definiert ist, müssen alle Eingabestatus dieselbe Anzahl von Zählern aufweisen.
Werte des Typs „decimal-float“ (DECFLOAT) werden nicht unterstützt.
Beispiele¶
This example shows how to use the three related functions APPROX_TOP_K_ACCUMULATE, APPROX_TOP_K_ESTIMATE, and APPROX_TOP_K_COMBINE.
Bemerkung
In diesem Beispiel werden mehr Zähler als unterschiedliche Datenwerte verwendet, um konsistente Ergebnisse zu erhalten. In realen Anwendungen ist die Anzahl der unterschiedlichen Werte in der Regel größer als die Anzahl der Zähler, sodass Sie Näherungswerte erhalten, die variieren können.
In diesem Beispiel wird eine Tabelle mit 8 Zeilen und den Werten 1-8 sowie eine zweite Tabelle mit 8 Zeilen und den Werten 5-12 generiert. Daher sind die häufigsten Werte in der Vereinigung der beiden Tabellen die Werte 5 bis 8, von denen jeder eine Zählwert von 2 hat.
Erstellen Sie eine einfache Tabelle und Daten:
Create a table that contains the „state“ that represents the current
approximate Top K information for the table named sequence_demo:
Now create a second table and add data. (In a more realistic situation, the user could have loaded more data into the first table and divided the data into non-overlapping sets based on the time that the data was loaded.)
Rufen Sie die „Statusinformationen“ nur für die neuen Daten ab.
Kombinieren Sie die „Statusinformationen“ für die zwei Mengen von Zeilen:
Ermitteln Sie den approximierten Top K-Wert der kombinierten Zeilenmenge: