Planmäßige Generierung von Spaltenstatistiken
Befolgen Sie diese Schritte, um einen Zeitplan für die Generierung von Spaltenstatistiken in AWS Glue Data Catalog mithilfe der AWS Glue-Konsole, der AWS CLI oder der Operation CreateColumnStatisticsTaskSettings zu konfigurieren.
- Console
-
Generieren von Spaltenstatistiken mit der Konsole
-
Melden Sie sich bei der AWS Glue-Konsole unter https://console.aws.amazon.com/glue/
an. -
Wählen Sie „Datenkatalog-Tabellen“ aus.
-
Wählen Sie eine Tabelle aus der Liste aus.
-
Wählen Sie im unteren Bereich der Seite Tabellen die Registerkarte Spaltenstatistik.
-
Sie können aus Aktionen auch unter Spaltenstatistiken die Option Nach Zeitplan generieren auswählen.
-
Konfigurieren Sie auf der Seite Statistiken nach Zeitplan generieren einen wiederkehrenden Zeitplan für die Ausführung der Spaltenstatistikaufgabe, indem Sie die Häufigkeit und die Startzeit auswählen. Sie können die Häufigkeit stündlich, täglich oder wöchentlich wählen oder einen Cron-Ausdruck definieren, um den Zeitplan anzugeben.
Ein Cron-Ausdruck ist eine Zeichenfolge, die ein Zeitplanmuster darstellt und aus 6 Feldern besteht, die durch Leerzeichen getrennt sind: * * * * * <minute><hour><day of month><month><day of week><year> Um beispielsweise jeden Tag um Mitternacht eine Aufgabe auszuführen, wäre der Cron-Ausdruck: 0 0 * * ? *
Weitere Informationen finden Sie unter Cron-Ausdrücke.
Wählen Sie als Nächstes die Spaltenoption aus, um Statistiken zu generieren.
-
Alle Spalten: Wählen Sie diese Option aus, um Statistiken für alle Spalten in der Tabelle zu generieren.
-
Ausgewählte Spalten – Wählen Sie diese Option aus, um Statistiken für bestimmte Spalten zu generieren. Sie können die Spalten in der Dropdown-Liste auswählen.
-
Wählen Sie eine IAM-Rolle aus oder erstellen Sie eine vorhandene Rolle, die über Berechtigungen zum Generieren von Statistiken verfügt. AWS Glue übernimmt diese Rolle, um Spaltenstatistiken zu generieren.
Ein schnellerer Ansatz besteht darin, die AWS Glue-Konsole eine Rolle für Sie erstellen zu lassen. Die so erstellte Rolle dient speziell der Generierung von Spaltenstatistiken und umfasst die von AWS verwaltete
AWSGlueServiceRole-Richtlinie sowie die erforderliche Inline-Richtlinie für die angegebene Datenquelle.Wenn Sie eine vorhandene Rolle für das Generieren von Spaltenstatistiken angeben, stellen Sie sicher, dass diese die
AWSGlueServiceRole-Richtlinie oder eine gleichwertige Version dieser Richtlinie (oder eine reduzierte Version) sowie die erforderlichen Inline-Richtlinien enthält.-
(Optional) Wählen Sie als Nächstes eine Sicherheitskonfiguration aus, um für Protokolle die Verschlüsselung im Ruhezustand zu aktivieren.
-
(Optional) Sie können eine Stichprobengröße auswählen, indem Sie nur einen bestimmten Prozentsatz der Zeilen aus der Tabelle angeben, um Statistiken zu generieren. Der Standardwert ist „Alle Zeilen“. Verwenden Sie die Aufwärts- und Abwärtspfeile, um den Prozentwert zu erhöhen oder zu verringern.
Wir empfehlen, alle Zeilen in die Tabelle aufzunehmen, um genaue Statistiken zu berechnen. Verwenden Sie Beispielzeilen zur Generierung von Spaltenstatistiken nur dann, wenn Näherungswerte akzeptabel sind.
-
Wählen Sie Statistiken generieren aus, um die Aufgabe zur Generierung von Spaltenstatistiken auszuführen.
-
- AWS CLI
-
Sie können das folgende AWS CLI-Beispiel verwenden, um einen Zeitplan für die Generierung von Spaltenstatistiken zu erstellen. Der Datenbankname, der Tabellenname und die Rolle sind erforderliche Parameter, während der Zeitplan, die Spaltennamenliste, die Katalog-ID, die Stichprobengröße und die Sicherheitskonfiguration optionale Parameter sind.
aws glue create-column-statistics-task-settings \ --database-name 'database_name' \ --table-nametable_name\ --role 'arn:aws:iam::123456789012:role/stats-role' \ --schedule 'cron(0 0-5 14 * * ?)' \ --column-name-list 'col-1' \ --catalog-id '123456789012' \ --sample-size '10.0' \ --security-configuration 'test-security'Sie können Spaltenstatistiken auch generieren, indem Sie die Operation StartColumnStatisticsTaskRun aufrufen.