Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Überlegungen und Einschränkungen

Fokusmodus
Überlegungen und Einschränkungen - Amazon Data Firehose

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.

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.

Anmerkung

Firehose unterstützt Apache Iceberg Tables als Ziel in allen Regionen AWS-Regionenaußer China und im asiatisch-pazifischen Raum (Malaysia). AWS GovCloud (US) Regions Die Firehose-Integration mit Amazon S3 Tables befindet sich in der Vorschauphase in allen Regionen, in denen Amazon S3 Tables verfügbar ist. Verwenden Sie es nicht für Ihre Produktionsworkloads.

Die Firehose-Unterstützung für Apache Iceberg-Tabellen hat die folgenden Überlegungen und Einschränkungen.

  • Durchsatz — Wenn Sie Direct PUT als Quelle für die Bereitstellung von Daten an Apache Iceberg-Tabellen verwenden, beträgt der maximale Durchsatz pro Stream MiB/second in US East (N. Virginia), US West (Oregon), and Europe (Ireland) Regions and 1 MiB/second in allen anderen Fällen 5. AWS-Regionen Wenn Sie Daten ohne Aktualisierungen und Löschungen in Iceberg-Tabellen einfügen und einen höheren Durchsatz für Ihren Stream wünschen, können Sie das Formular Firehose Limits verwenden, um eine Erhöhung des Durchsatzlimits zu beantragen.

    Sie können die AppendOnly Markierung auch auf setzen, True wenn Sie nur Daten einfügen und keine Aktualisierungen und Löschungen vornehmen möchten. Wenn Sie die AppendOnly Flagge auf setzenTrue, passt sich Firehose automatisch Ihrem Durchsatz an. Derzeit können Sie dieses Flag nur bei der CreateDeliveryStreamAPI-Operation setzen.

    Wenn bei einem Direct PUT-Stream eine Drosselung aufgrund höherer Datenaufnahmemengen auftritt, die die Durchsatzkapazität eines Firehose-Streams überschreiten, erhöht Firehose automatisch die Durchsatzgrenze des Streams, bis die Drosselung eingedämmt ist. Je nach erhöhtem Durchsatz und Drosselung kann es länger dauern, bis Firehose den Durchsatz eines Streams auf das gewünschte Niveau erhöht. Aus diesem Grund sollten Sie die fehlgeschlagenen Datenaufnahmesätze erneut versuchen. Wenn Sie erwarten, dass das Datenvolumen bei plötzlichen großen Datenstößen ansteigt, oder wenn Ihr neuer Stream einen höheren Durchsatz als den standardmäßigen Durchsatzgrenzwert benötigt, fordern Sie eine Erhöhung des Durchsatzlimits an.

  • S3-Transaktion pro Sekunde (TPS) — Um die S3-Leistung zu optimieren, empfehlen wir, den Quelldatensatz mit einem geeigneten Partitionsschlüssel zu partitionieren, wenn Sie Kinesis Data Streams oder Amazon MSK als Quelle verwenden. Auf diese Weise werden Datensätze, die an dieselbe Iceberg-Tabelle weitergeleitet werden, einer oder mehreren Quellpartitionen zugeordnet, die als Shards bezeichnet werden. Wenn möglich, verteilen Sie Datensätze, die zu verschiedenen Ziel-Iceberg-Tabellen gehören, auf verschiedene. partitions/shards, so that you can use all the aggregate throughput available across all the partitions/shards of the source topic/stream

  • Spalten — Für Spaltennamen und Werte verwendet Firehose nur die erste Ebene von Knoten in einem mehrstufigen verschachtelten JSON. Firehose wählt beispielsweise die Knoten aus, die in der ersten Ebene verfügbar sind, einschließlich des Positionsfeldes. Die Spaltennamen und die Datentypen der Quelldaten sollten mit denen der Zieltabellen übereinstimmen, damit Firehose erfolgreich liefern kann. In diesem Fall erwartet Firehose, dass Sie in Ihren Iceberg-Tabellen entweder eine Spalte vom Datentyp Struct oder Map haben, die dem Positionsfeld entspricht. Firehose unterstützt 16 Verschachtelungsebenen. Es folgt ein Beispiel für ein verschachteltes JSON.

    { "version":"2016-04-01", "deviceId":"<solution_unique_device_id>", "sensorId":"<device_sensor_id>", "timestamp":"2024-01-11T20:42:45.000Z", "value":"<actual_value>", "position":{ "x":143.595901, "y":476.399628, "z":0.24234876 } }

    Wenn die Spaltennamen oder Datentypen nicht übereinstimmen, gibt Firehose einen Fehler aus und übermittelt Daten an den S3-Fehler-Bucket. Wenn alle Spaltennamen und Datentypen in den Apache Iceberg-Tabellen übereinstimmen, der Quelldatensatz jedoch ein zusätzliches Feld enthält, überspringt Firehose das neue Feld.

  • Ein JSON-Objekt pro Datensatz — Sie können nur ein JSON-Objekt in einem Firehose senden. Wenn Sie mehrere JSON-Objekte innerhalb eines Datensatzes aggregieren und senden, gibt Firehose einen Fehler aus und übermittelt Daten an den S3-Fehler-Bucket. Wenn Sie Datensätze mit KPL aggregieren und Daten mit Amazon Kinesis Data Streams als Quelle in Firehose aufnehmen, deaggregiert Firehose automatisch und verwendet ein JSON-Objekt pro Datensatz.

  • Komprimierung und Speicheroptimierung — Jedes Mal, wenn Sie mit Firehose in Iceberg-Tabellen schreiben, werden Snapshots, Datendateien und gelöschte Dateien festgeschrieben und generiert. Viele Datendateien erhöhen den Metadaten-Overhead und beeinträchtigen die Leseleistung. Um eine effiziente Abfrageleistung zu erzielen, sollten Sie eine Lösung in Betracht ziehen, bei der in regelmäßigen Abständen kleine Datendateien in weniger größere Datendateien umgeschrieben werden. Dieser Vorgang wird als Komprimierung bezeichnet. AWS Glue Data Catalog unterstützt die automatische Komprimierung Ihrer Apache Iceberg-Tabellen. Weitere Informationen finden Sie unter Verdichtungsmanagement im AWS Glue-Benutzerhandbuch. Weitere Informationen finden Sie unter Automatische Komprimierung von Apache Iceberg-Tabellen. Alternativ können Sie den Befehl Athena Optimize ausführen, um die Komprimierung manuell durchzuführen. Weitere Informationen zum Befehl Optimize finden Sie unter Athena Optimize.

    Neben der Komprimierung von Datendateien können Sie auch den Speicherverbrauch mit der VACUUM-Anweisung optimieren, die Tabellenverwaltung für Apache Iceberg-Tabellen durchführt, z. B. das Ablaufen von Snapshots und das Entfernen verwaister Dateien. Alternativ können Sie AWS Glue Data Catalog damit auch die verwaltete Tabellenoptimierung von Apache Iceberg-Tabellen unterstützen, indem die Datendateien, verwaisten Dateien und abgelaufenen Snapshots, die nicht mehr benötigt werden, automatisch entfernt werden. Weitere Informationen finden Sie in diesem Blogbeitrag zur Speicheroptimierung von Apache Iceberg-Tabellen.

  • Wir unterstützen die Amazon MSK Serverless-Quelle für Apache Iceberg Tables nicht als Ziel.

  • Für die Lieferung an Tabellen in Amazon S3 S3-Tabellen-Buckets unterstützt Firehose nur den AWS Glue Standardkatalog.

  • Für einen Aktualisierungsvorgang legt Firehose eine Löschdatei gefolgt von einem Einfügevorgang ab. Für das Ablegen gelöschter Dateien fallen Gebühren für Amazon S3 an.

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.