AggregateMatch
Überprüft das Verhältnis zweier Spaltenaggregationen anhand eines bestimmten Ausdrucks. Dieser Regeltyp funktioniert für mehrere Datensätze. Die beiden Spaltenaggregationen werden ausgewertet und ein Quotient wird gebildet, indem das Ergebnis der ersten Spaltenaggregation durch das Ergebnis der zweiten Spaltenaggregation dividiert wird. Das Verhältnis wird mit dem bereitgestellten Ausdruck verglichen, um eine boolesche Antwort zu erzeugen.
Syntax
Spaltenaggregation
AggregateMatch<AGG_OPERATION>(<OPTIONAL_REFERENCE_ALIAS>.<COL_NAME>)
AGG_OPERATION – Der für die Aggregation zu verwendende Vorgang. Derzeit werden
sumundavgunterstützt.Unterstützte Spaltentypen: Byte, Dezimal, Doppelt, Gleitkommazahl, Ganzzahl, Lang, Kurz
OPTIONAL_REFERENCE_ALIAS – Dieser Parameter muss angegeben werden, wenn die Spalte aus einem Referenzdatensatz und nicht aus dem primären Datensatz stammt. Wenn Sie diese Regel im AWS Glue Data Catalog verwenden, muss Ihr Referenzalias dem Format „<database_name>.<table_name>.<column_name>“ entsprechen
Unterstützte Spaltentypen: Byte, Dezimal, Doppelt, Gleitkommazahl, Ganzzahl, Lang, Kurz
COL_NAME – Der Name der Spalte, die aggregiert werden soll.
Unterstützte Spaltentypen: Byte, Dezimal, Doppelt, Gleitkommazahl, Ganzzahl, Lang, Kurz
Beispiel: Durchschnitt
"avg(rating)"
Beispiel: Summe
"sum(amount)"
Beispiel: Durchschnitt der Spalte im Referenzdatensatz
"avg(reference.rating)"
Regel
AggregateMatch<AGG_EXP_1><AGG_EXP_2><EXPRESSION>
AGG_EXP_1 – Die Aggregation der ersten Spalte.
Unterstützte Spaltentypen: Byte, Dezimal, Doppelt, Gleitkommazahl, Ganzzahl, Lang, Kurz
Unterstützte Spaltentypen: Byte, Dezimal, Doppelt, Gleitkommazahl, Ganzzahl, Lang, Kurz
AGG_EXP_2 – Die Aggregation der zweiten Spalte.
Unterstützte Spaltentypen: Byte, Dezimal, Doppelt, Gleitkommazahl, Ganzzahl, Lang, Kurz
Unterstützte Spaltentypen: Byte, Dezimal, Doppelt, Gleitkommazahl, Ganzzahl, Lang, Kurz
AUSDRUCK – Ein Ausdruck, der für die Antwort des Regeltyps ausgeführt wird, um einen booleschen Wert zu erzeugen. Weitere Informationen finden Sie unter Ausdrücke.
Beispiel: Aggregieren einer Übereinstimmung mithilfe von Summe
Die folgende Beispielregel prüft, ob die Summe der Werte in der amount-Spalte genau der Summe der Werte in der total_amount-Spalte entspricht.
AggregateMatch "sum(amount)" "sum(total_amount)" = 1.0
Beispiel: Aggregieren einer Übereinstimmung mithilfe des Durchschnitts
Die folgende Beispielregel prüft, ob der Durchschnitt der Werte in der ratings-Spalte mindestens 90 % des Durchschnitts der Werte in der ratings-Spalte im reference-Datensatz entspricht. Der Referenzdatensatz wird als zusätzliche Datenquelle im ETL- oder Data-Catalog-Erlebnis bereitgestellt.
In AWS Glue ETL können Sie Folgendes verwenden:
AggregateMatch "avg(ratings)" "avg(reference.ratings)" >= 0.9
Im AWS Glue Data Catalog können Sie Folgendes verwenden:
AggregateMatch "avg(ratings)" "avg(database_name.tablename.ratings)" >= 0.9
Nullverhalten
Die AggregateMatch-Regel ignoriert Zeilen mit NULL-Werten bei der Berechnung der Aggregationsmethoden (Summe/Mittelwert). Zum Beispiel:
+---+-----------+ |id |units | +---+-----------+ |100|0 | |101|null | |102|20 | |103|null | |104|40 | +---+-----------+
Der Mittelwert der Spalte units ist (0 + 20 + 40)/3 = 20. Die Zeilen 101 und 103 werden bei dieser Berechnung nicht berücksichtigt.