View a markdown version of this page

Wichtige Überlegungen - Amazon Kinesis Data Streams

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.

Wichtige Überlegungen

  • KPL-Upgrade für Null-Partitionsschlüssel — Kunden, die Datensätze ohne Partitionsschlüssel versenden möchten, sollten auf die neueste KPL-Version aktualisieren. Für Kunden, die weiterhin Partitionsschlüssel bereitstellen, sind keine KPL- oder KCL-Änderungen erforderlich. Weitere Informationen finden Sie unter KPL und KCL mit serviceverwalteten Streams.

  • AWS Überlegungen zum SDK — Wenn Sie das AWS SDK direkt (und nicht die KPL oder KCL) verwenden, um Daten aus einem vom Service verwalteten Stream zu produzieren oder daraus zu konsumieren, sollten Sie vor der Aktivierung Folgendes überprüfen: AUTO

    • Produzenten — Führen Sie ein Upgrade auf die neueste SDK-Version durch, um den Partitionsschlüssel beim Schreiben in einen vom Service verwalteten Stream wegzulassen. Auf dem neuesten SDK PartitionKey ist dies optional, sodass Sie es auch PutRecords ohne aufrufen PutRecord können. Wenn Sie weiterhin einen Partitionsschlüssel angeben, ist keine SDK-Änderung erforderlich — der Dienst akzeptiert den Wert und ignoriert ihn bei der Shard-Platzierung. Bevor Sie Null-Partitionsschlüssel für einen Stream aktivieren AUTO und damit beginnen, sie an einen Stream zu senden, aus dem bestehende Verbraucher lesen, aktualisieren Sie diese Benutzer, um fehlende Partitionsschlüssel zu behandeln. PartitionKey

    • Verbraucher — In einem vom Service verwalteten Stream. Bei Datensätzen, GetRecords die ohne einen solchen Wert geschrieben wurden, wird ein fehlender Wert (Null) zurückgegeben. SubscribeToShard PartitionKey Jeder Consumer, der liest PartitionKey und davon ausgeht, dass er immer präsent ist, kann beim Lesen eines solchen Datensatzes während der Laufzeit ausfallen — das gilt unabhängig von der SDK-Version. Führen Sie ein Upgrade auf die neueste SDK-Version durch, um diese Datensätze sicher lesen zu können, und aktualisieren Sie Ihren Code, um einen fehlenden Wert zu verarbeiten. Für das AWS SDK for Go, das AWS SDK für Kotlin und das AWS SDK für Rust wird beim Upgrade zusätzlich ein optionaler Typ verwendet, sodass ein unbehandelter fehlender Wert beim Upgrade als Kompilierzeitfehler angezeigt wird. PartitionKey Verbraucher, die nicht lesen, sind davon nicht betroffen. PartitionKey

  • Aggregation wird nicht unterstützt — Die KPL-Aggregation wird in keiner KPL-Version für vom Service verwaltete Streams unterstützt. Erwägen Sie, die Aggregation zu deaktivieren, wenn Sie die vom Service verwaltete Datensatzverteilung verwenden möchten. Details hierzu finden Sie unter KPL und KCL mit serviceverwalteten Streams.

  • Kann nicht innerhalb eines Streams gemischt werden — Die Strategie zur Verteilung von Datensätzen gilt für den gesamten Stream. Es ist nicht möglich, sowohl vom Dienst verwaltete als auch benutzerverwaltete Partitionsschlüssel gleichzeitig für denselben Stream zu verwenden. Für Workloads, die sowohl geordnete als auch ungeordnete Daten benötigen, erstellen Sie separate Streams.

  • Keine neuen Dienstbeschränkungen — Durch die Verteilung von Service-managed Datensätzen werden keine neuen Grenzwerte eingeführt. Bestehende Kinesis Data Streams Streams-Grenzwerte gelten weiterhin, einschließlich des Maximums von 1 MB pro Datensatz, 1.000 Datensätze pro Sekunde pro Shard für Schreibvorgänge und 500 Datensätze pro PutRecords Anfrage.