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.
Kinesis Client Library verwenden
Was ist Kinesis Client Library?
Kinesis Client Library (KCL) ist eine eigenständige Java-Softwarebibliothek, die entwickelt wurde, um den Prozess der Nutzung und Verarbeitung von Daten aus Amazon Kinesis Data Streams zu vereinfachen. KCL bewältigt viele der komplexen Aufgaben im Zusammenhang mit verteilter Datenverarbeitung, sodass sich Entwickler auf die Implementierung ihrer Geschäftslogik für die Datenverarbeitung konzentrieren können. Es verwaltet Aktivitäten wie den Lastenausgleich zwischen mehreren Workern, die Reaktion auf Ausfälle von Mitarbeitern, die Überprüfung verarbeiteter Datensätze und die Reaktion auf Änderungen der Anzahl der Shards im Stream.
KCL wird häufig aktualisiert, um neuere Versionen der zugrunde liegenden Bibliotheken, Sicherheitsverbesserungen und Bugfixes zu integrieren. Wir empfehlen Ihnen, die neueste Version von KCL zu verwenden, um bekannte Probleme zu vermeiden und von allen aktuellen Verbesserungen zu profitieren. Die neueste KCL-Version finden Sie auf KCL Github.
Wichtig
-
Wir empfehlen, die neueste KCL-Version zu verwenden, um bekannte Fehler und Probleme zu vermeiden. Wenn Sie KCL 2.6.0 oder früher verwenden, führen Sie ein Upgrade auf KCL 2.6.1 oder höher durch, um ein seltenes Problem zu vermeiden, das die Shard-Verarbeitung blockieren kann, wenn sich die Stream-Kapazität ändert.
-
KCL ist eine Java-Bibliothek. Support für andere Sprachen als Java wird über einen Java-basierten Daemon namens bereitgestellt. MultiLangDaemon MultiLangDaemoninteragiert mit der KCL-Anwendung über STDIN und STDOUT. Weitere Informationen zum On finden Sie unter. MultiLangDaemon GitHub Entwickeln Sie Verbraucher mit KCL in Nicht-Java-Sprachen
-
Verwenden Sie die AWS SDK for Java Versionen 2.27.19 bis 2.27.23 nicht mit KCL 3.x. Diese Versionen enthalten ein Problem, das einen Ausnahmefehler im Zusammenhang mit der DynamoDB-Nutzung von KCL verursacht. Wir empfehlen, die AWS SDK for Java Version 2.28.0 oder höher zu verwenden, um dieses Problem zu vermeiden.
Die wichtigsten Funktionen und Vorteile von KCL
Im Folgenden sind die wichtigsten Funktionen und die damit verbundenen Vorteile des KCL aufgeführt:
-
Skalierbarkeit: Mit KCL können Anwendungen dynamisch skalieren, indem die Verarbeitungslast auf mehrere Worker verteilt wird. Sie können Ihre Anwendung manuell oder mit automatischer Skalierung nach innen oder außen skalieren, ohne sich Gedanken über die Lastumverteilung machen zu müssen.
-
Lastenausgleich: KCL verteilt die Verarbeitungslast automatisch auf die verfügbaren Mitarbeiter, was zu einer gleichmäßigen Verteilung der Arbeit auf die Mitarbeiter führt.
-
Checkpointing: KCL verwaltet das Checkpointing verarbeiteter Datensätze, sodass Anwendungen die Verarbeitung an der zuletzt erfolgreich verarbeiteten Position fortsetzen können.
-
Fehlertoleranz: KCL bietet integrierte Fehlertoleranzmechanismen, die sicherstellen, dass die Datenverarbeitung auch dann fortgesetzt wird, wenn einzelne Mitarbeiter ausfallen. KCL bietet at-least-once auch die Lieferung an.
-
Umgang mit Änderungen auf Stream-Ebene: KCL passt sich an Splits und Zusammenführungen von Shards an, die aufgrund von Änderungen des Datenvolumens auftreten können. Es behält die Reihenfolge bei, indem es sicherstellt, dass untergeordnete Shards erst verarbeitet werden, nachdem der übergeordnete Shard fertiggestellt und mit einem Checkpoint versehen wurde.
-
Überwachung: KCL lässt sich in Amazon integrieren, um die Überwachung auf CloudWatch Verbraucherebene zu ermöglichen.
-
Mehrsprachenunterstützung: KCL unterstützt Java nativ und ermöglicht mehrere Nicht-Java-Programmiersprachen. MultiLangDaemon