Aktualisieren des Snapshot-Aufbewahrungsoptimierers - AWS Glue

Aktualisieren des Snapshot-Aufbewahrungsoptimierers

Sie können die bestehende Konfiguration eines Snapshot-Aufbewahrungsoptimierers für eine bestimmte Apache-Iceberg-Tabelle mithilfe der AWS Glue-Konsole, AWS CLI oder der UpdateTableOptimizer-API aktualisieren.

Console
So aktualisieren Sie die Konfiguration der Snapshot-Aufbewahrung:
  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die AWS Glue-Konsole unter https://console.aws.amazon.com/glue/.

  2. Wählen Sie Datenkatalog und dann Tabellen aus. In der Liste der Tabellen wählen Sie die Iceberg-Tabelle aus, für die Sie die Konfiguration des Snapshot-Aufbewahrungsoptimierers aktualisieren möchten.

  3. Wählen Sie unten auf der Seite Tabellendetails die Registerkarte Tabellenoptimierung und dann Bearbeiten aus. Sie können auch im Menü Aktionen oben rechts auf der Seite die Option Bearbeiten unter Optimierung auswählen.

  4. Nehmen Sie auf der Seite Optimierung bearbeiten die gewünschten Änderungen vor.

  5. Wählen Sie Speichern.

AWS CLI

Um einen Snapshot-Aufbewahrungsoptimierer mit AWS CLI zu aktualisieren, können Sie den folgenden Befehl verwenden:

aws glue update-table-optimizer \ --catalog-id 123456789012 \ --database-name iceberg_db \ --table-name iceberg_table \ --table-optimizer-configuration '{"roleArn":"arn:aws:iam::123456789012:role/optimizer_role"","enabled":'true', "vpcConfiguration":{"glueConnectionName":"glue_connection_name"},"retentionConfiguration":{"icebergConfiguration":{"snapshotRetentionPeriodInDays":7,"numberOfSnapshotsToRetain":3,"cleanExpiredFiles":'true'}}}' \ --type retention

Mit diesem Befehl wird die Aufbewahrungsdokumentation für die angegebene Tabelle im angegebenen Katalog und in der angegebenen Datenbank und Region aktualisiert. Folgende sind die wichtigsten Parameter:

  • snapshotRetentionPeriodInDays – Die Anzahl der Tage, die Snapshots aufbewahrt werden sollen, bevor sie ablaufen. Der Standardwert ist 1.

  • numberOfSnapshotsToRetain – Die Mindestanzahl von Snapshots, die aufbewahrt werden sollen, auch wenn sie älter sind als der festgelegte Aufbewahrungszeitraum. Der Standardwert ist 5.

  • cleanExpiredFiles – Ein boolescher Wert, der angibt, ob abgelaufene Datendateien nach dem Ablauf von Snapshots gelöscht werden sollen. Der Standardwert ist true.

    Wenn dieser Wert auf „true“ gesetzt ist, werden ältere Snapshots aus den Tabellenmetadaten entfernt, und die ihnen zugrunde liegenden Dateien werden gelöscht. Wenn dieser Parameter auf „false“ gesetzt ist, werden ältere Snapshots aus den Tabellenmetadaten entfernt, aber die ihnen zugrunde liegenden Dateien verbleiben als verwaiste Dateien im Speicher.

API

Um einen Tabellenoptimierer zu aktualisieren, können Sie die UpdateTableOptimizer-API verwenden. Mit dieser API können Sie die Konfiguration eines vorhandenen Tabellenoptimierers für die Komprimierung, Aufbewahrung oder Entfernung von verwaisten Dateien aktualisieren. Zu den Anforderungsparametern zählen:

  • catalogId (erforderlich): Die ID des Katalogs, der die Tabelle enthält

  • databaseName (optional): Der Name der Datenbank, die die Tabelle enthält

  • tableName (optional): Der Name der Tabelle

  • type (erforderlich): Der Typ des Tabellenoptimierers (Komprimierung, Aufbewahrung oder Entfernung von verwaisten Dateien)

  • RetentionConfiguration (erforderlich): Die aktualisierte Konfiguration für den Tabellenoptimierer, einschließlich Rollen-ARN, Aktivierungsstatus, Aufbewahrungskonfiguration und Konfiguration zum Entfernen verwaister Dateien.