Stream Processing: Alpakka 2.0 baut auf neue APIs

Die auf Akka Streams ausgelegte Bibliothek Alpakka enthält eine neue API zur Anbindung der quelloffenen No-SQL-Datenbank Apache Cassandra.

In Pocket speichern vorlesen Druckansicht
Stream Processing: Alpakka 2.0 baut auf neue APIs
Lesezeit: 2 Min.

Das Akka-Team von Lightbend hat das zweite Major Release von Alpakka vorgelegt. Die neue Version der auf Akka Streams ausgelegten Bibliothek enthält Updates der Abhängigkeiten für eine Reihe von Konnektoren und setzt nun mindestens Akka 2.5.31 beziehungsweise Akka 2.6.4 voraus. Während die meisten APIs seit Alpakka 1.0 unverändert bleiben, bietet das Release 2.0 eine komplett überarbeitete Akka-Streams-API: Alpakka Cassandra wurde auf Basis des Datastax-Java-Treibers 4.5 neu geschrieben und bildet nun das Fundament für das Plug-in Akka Persistence Cassandra, das zur Anbindung der quelloffenen No-SQL-Datenbank Apache Cassandra dient.

Neu in Alpakka 2.0 ist auch ein Konnektor für Pravega. Als Speicherabstraktion stellt Pravega einen Stream für kontinuierliche und unbegrenzte Daten bereit. Dieser Stream entspricht einem Satz von dauerhaften und nur anzuhängenden Segmenten, wobei jedes Segment eine unbegrenzte Folge von Bytes ist. Die Pravega-Streams bieten eine Exactly-once-Semantik und Atomarität (Abgeschlossenheit) für Gruppen von Ereignissen, die Transaktionen verwenden.

Weitere Neuerungen in der Bibliothek umfassen die Unterstützung von Elasticsearch Version 7, AWS-Kinesis-KCL-Streams sowie erweiterte Funktionen für den Umgang mit TAR-Archiven.

Alpakka 2.0 erscheint mit einiger Verzögerung. Bereits im Januar hatte Lightbend Version 2.0 von Alpakka Kafka vorgelegt – die Entwicklung dieser auf Kafka zugeschnittenen Bibliothek erfolgt allerdings auch separat zur generellen Arbeit an Alpakka. Obwohl Alpakka derzeit noch Akka-Versionen der 2.5.x-Serie unterstützt, rät das Lightbend-Team Anwendern zu einem Wechsel auf Akka 2.6.x, um von der damit einhergehenden Vereinfachung der Akka Streams API in Hinblick auf den Stream-Materialisierer zu profitieren. Darüber hinaus sollen künftige Alpakka-Releases nur noch Akka 2.6.x unterstützen.

Detailliertere Informationen zu den Änderungen in der Bibliothek finden sich in den Release Notes und auch im Lightbend-Blog zu Alpakka. (map)