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.
So funktioniert die Streaming-Tabellenzustellung
In diesem Thema erfahren Sie, wie bei einer Streaming-Tabellenübermittlung Datensätze aus Ihrem Amazon Kinesis Data Streams-Stream an Streaming-Tabellen auf Apache Iceberg gesendet werden, die von S3-Tabellen-Buckets unterstützt werden. Dazu gehören Datensatzkonvertierung, Erstellung von Zieltabellen, Partitionierung, Datenaktualität, Warteschlange mit toten Buchstaben und Verschlüsselung.
So funktioniert die Lieferung
Bei einer Streaming-Tabellenübermittlung werden Datensätze in den folgenden Schritten an eine Streaming-Tabelle auf Apache Iceberg gesendet:
-
Lesen — Die Übertragung liest Datensätze aus allen Shards im Kinesis Data Streams-Stream.
-
Puffer — Die Übertragung puffert Datensätze, bis das Aktualitätsintervall der Daten erreicht ist.
-
Validieren und konvertieren — Die Lieferung validiert jeden Datensatz anhand des Schemas in der Schemaregistrierung und konvertiert ihn in das Apache AWS Glue Iceberg-Tabellenschema. Datensätze, bei denen die Überprüfung nicht bestanden hat, werden in die Warteschlange mit unzustellbaren Buchstaben verschoben.
-
Komprimieren und Schreiben — Die Lieferung konvertiert Datensätze in optimierte Apache Parquet-Dateien mit Inline-Komprimierung und schreibt sie in die Iceberg-Zieltabelle.
-
Commit — Die Übertragung überträgt die neuen Dateien in die Iceberg-Tabelle, sodass die Daten abfragbar werden.
Datensatzkonvertierung
Für die Bereitstellung von Streaming-Tabellen ist ein in der Schemaregistrierung registriertes Schema erforderlich. AWS Glue Die Bereitstellung verwendet das Schema, um eingehende Datensätze in das Apache Iceberg-Tabellenschema zu konvertieren. Es unterstützt die folgenden Eingabedatensatzformate:
-
JSON — einfache JSON-Datensätze. Sie geben eine an
GSRSchemaARN, die auf ein in der Schemaregistrierung registriertes AWS Glue Schema verweist. -
GSR_JSON — JSON-Datensätze mit der Schema-ID, die vom Schema Registry-Serializer in jeden Datensatz eingebettet wurde. AWS Glue Das Schema wird automatisch aus der Schemaregistrierung aufgelöst. AWS Glue
Die vollständigen Regeln für die Zuordnung von AWS Glue Schema-Registry zu Iceberg-Typen und zur Feldbehandlung finden Sie unter. Verhalten von Iceberg für Streaming-Tabellen
Zieltabelle
Wenn Sie eine Streaming-Tabellenlieferung erstellen, erstellt Amazon Kinesis Data Streams die Iceberg-Zieltabelle in dem von Ihnen angegebenen S3-Tabellen-Bucket. Geben Sie Folgendes an:
-
Tabellen-Bucket-ARN — der ARN des S3-Tabellen-Buckets, in dem die Tabelle erstellt wird.
-
Namespace — der Namespace für die Tabelle.
-
Tabellenname — der Name der Tabelle, die erstellt werden soll. Jede Lieferung erstellt eine eigene Tabelle. Sie können nicht an eine bestehende Tabelle liefern.
-
Partitionsspalte — eine
timestamptzSpalte, die verwendet wird, um die Tabelle nach Stunden zu partitionieren. Informationen zu den Anforderungen an die Partitionierung finden Sie unterVerhalten von Iceberg für Streaming-Tabellen.
Datenaktualität
Die Aktualität der Daten definiert die maximale Pufferzeit, bevor Datensätze geliefert werden. Sie können diesen Wert zwischen 300 und 900 Sekunden (5 bis 15 Minuten) konfigurieren. Standardmäßig ist ein Zeitraum von 300 Sekunden festgelegt. Niedrigere Werte sorgen für eine schnellere Übertragung, während höhere Werte weniger, größere Dateien am Ziel erzeugen.
Dead-letter Warteschlange
Für die Übertragung von Streaming-Tabellen ist eine Warteschlange ohne Angabe von Buchstaben erforderlich. Sie geben einen Amazon S3-Bucket an, der Informationen über Datensätze empfängt, deren Überprüfung nicht bestanden hat. Sie geben den Bucket-ARN, den erwarteten Bucket-Besitzer und ein optionales Präfix für die Fehlerausgabe an. Die Warteschlange mit toten Buchstaben enthält Datensatzkennungen und Fehlerkontext, keine Nutzlasten für vollständige Datensätze.
Verschlüsselung
Bei der Bereitstellung von Streaming-Tabellen werden übermittelte Daten im Ruhezustand in Amazon S3 verschlüsselt. Standardmäßig werden Daten mit von Amazon S3 verwalteten Schlüsseln (SSE-S3) verschlüsselt. Sie können stattdessen einen vom Kunden verwalteten AWS KMS Schlüssel (SSE-KMS) verwenden.
Wichtig
Sie können einen Von AWS verwalteter Schlüssel (den aws/kinesis Alias) nicht für die Zielverschlüsselung verwenden. Sie müssen einen vom Kunden verwalteten AWS KMS Schlüssel verwenden. Wenn Ihr Kinesis-Quelldatenstrom mit einem verschlüsselt ist Von AWS verwalteter Schlüssel, können Sie außerdem keine Lieferung erstellen. Informationen zu den Verschlüsselungsanforderungen für den Quellstream finden Sie unterVerschlüsselung des Quelldatenstroms. Die AWS KMS
Berechtigungen, die die Rolle zur Dienstausführung benötigt, finden Sie unterIAM-Berechtigungen für die Datenlieferung.
Cross-account und regionsübergreifende Lieferung
Die Bereitstellung von Streaming-Tabellen unterstützt keine konto- oder regionsübergreifende Bereitstellung. Der Quell-Stream, der Ziel-S3-Tabellen-Bucket und die AWS Glue Schemaregistrierung müssen sich alle in derselben AWS-Konto Region befinden.