Cassandra 4.0 soll Daten zwischen Nodes schneller streamen als bisher

Die Beta-Version der Datenbank umfasst über 1000 Fehlerbehebungen und erlaubt mit dem Zero Copy Streaming offenbar ein rascheres Skalieren ohne VNode.

Lesezeit: 2 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen

(Bild: momente/Shutterstock.com)

Von
  • Silke Hahn

DataStax hat die Beta der Version 4.0 des NoSQL-Datenbanksystems Cassandra veröffentlicht. Das von der Apache Software Foundation verwaltete Datenbanksystem umfasst über 1000 Fehlerbehebungen und neue Funktionalitäten, wobei offenbar Fault Injection und Leistungstests herausstechen. Ein neu entwickeltes Feature namens Zero Copying Streaming soll es Cassandra 4.0 ermöglichen, Daten zwischen den Nodes während der Skalierung (wie dem Hinzufügen eines neuen Rechenzentrums) etwa fünfmal schneller zu streamen als ihre Vorgängerversionen.

Laut Anbieter kommt die Beta mit Clustern von bis zu 1000 Nodes zurecht, Unternehmen wie Amazon, DataStax, Iland und Instaclustr haben offenbar Software und Daten "gespendet", die in die Entwicklung der Beta eingeflossen sind. Das Ergebnis soll eine im Vergleich zu den Vorgängerversionen besonders robuste Version des Datenbanksystems sein: Laut Entwicklerteam stehen Cassandra für künftige Beta- und GA-Builds (General Availability) keine neuen Funktionalitäten oder bahnbrechende API-Änderungen mehr ins Haus. Zuletzt hatte DataStax einen Kubernetes-Operator für Apache Cassandra vorgestellt und mit dem voll verwalteten Dienst Astra das NoSQL-Datenbanksystem auch als Databank as a Service eingeführt.

Global verteilte Systeme haben in Sachen Konsistenz ihre potentielle Schwachstelle. Cassandra setzt dem einen inkrementellen Reparaturprozess entgegen, mit dem sie Datenreplikate an verschiedenen Speicherorten laufend miteinander synchronisiert. Den Algorithmus für diese Reparaturfunktion hat das DataStax-Team offenbar grundlegend umgeschrieben, da der Vorgang bisher stark zulasten der Ressourcen gegangen sein dürfte.

Nutzer erhalten in Cassandra 4.x eine Echtzeit-Audit-Protokollierung, um die Vorgänge ihrer Cluster zu überblicken. Über das Logging sollen sie nun besser überwachen können, wer auf Daten zugreift und wann er oder sie das tut. Die Protokollierung soll laut Anbieter die Workload-Performance nur geringfügig belasten. Mit dem neu implementierten fqltool lassen sich die Produktionsauslastungen offenbar erfassen und analysieren. Mit dem ebenfalls neuen CassandraNetworkAuthorizer lassen sich Rollen so konfigurieren, dass Nutzer zum Beispiel nur auf ein einziges Rechenzentrum zugreifen können, auch wenn das Unternehmen Rechenzentren an mehreren Orten betreibt.

Die neue Version legt Systemmetriken und Konfigurationseinstellungen über virtuelle Tabellen offen, die sich wie jede andere Cassandra-Tabelle verarbeiten lassen. Bislang war der gängige Weg beim Monitoring über Open-Source-Tools wie Cassandra Exporter von Instaclustr oder den Metrics Collector von DataStax, mit den virtuellen Tabellen dürften Betreiber einer Datenbank nun flexibler sein bei der Auswahl ihrer Tools.

Experimentelle Unterstützung erfährt Apache Cassandra 4.0 (Beta) durch den neuen Z Garbage Collector (ZGC) von Java 11, mit dem sich Unterbrechungen durch die "Müllabfuhr" künftig auf Millisekunden reduzieren lassen sollen. Dieses Feature bedarf noch gründlicher Tests und sollte vorerst noch nicht in der Produktion zum Einsatz kommen. Eine Reihe von Tools unterstützen Cassandra 4.x bereits, unter anderem Spring Boot und Spring Data, Quarkus, der Kafka Connector von DataStax, Medusa für die Handhabung von Backups oder der Spark Apache Cassandra Connector.

Eine vollständige Liste der mit Cassandra 4.x kompatiblen Drittanbieter-Ökosysteme findet sich in der Blog-Ankündigung zur Beta, die auf den Seiten von Apache Cassandra zum Download bereitsteht.

(sih)