Verteilte Datenbank: CockroachDB 2.0 verspricht mehr Tempo

Für die Datenablage und Queries steht Anwendern im neusten Release JSON zur Verfügung. CockroachDB lässt sich zudem in Multi-Region-Clustern einsetzen und verwalten.

In Pocket speichern vorlesen Druckansicht 19 Kommentare lesen
Verteilte Datenbank: CockroachDB 2.0 verspricht mehr Tempo

(Bild: Cockroach Labs)

Lesezeit: 3 Min.
Von
  • Matthias Parbel

Konsistenz und eine ausfallsichere Skalierung über Rechenzentrumsgrenzen hinweg sind die wichtigsten Aspekte der Open-Source-Datenbank CockroachDB. Seit Veröffentlichung des ersten Major Release vor rund einem Jahr haben die Macher von Cockroach Labs für Version 2.0 vor allem an der Verbesserung der Geschwindigkeit des Datenbanksystems gearbeitet. Um Entwicklungszeiten und Rapid Prototyping zu beschleunigen, steht Entwicklern nun ergänzend zur unterbrechungsfreien Schemata-Änderung eine PostgreSQL-kompatible JSON-Implementierung zur Verfügung.

Mit den JSON Data Types erhalten Anwender Zugriff auf eine Reihe neuer Operatoren, mit denen sich In-Place-Transformationen durchführen lassen. Invertierte Indizes helfen darüber hinaus, Queries in riesigen Datenbeständen zu beschleunigen, ohne vorab die Abfragetypen festlegen zu müssen. CockroachDB ist darauf ausgelegt, selbsttätig zu skalieren, während die einzelnen Knoten über ein Gossip-Protokoll kommunizieren, um das Balancing auszuhandeln. In Version 2.0 haben die Macher damit den Durchsatz bei Schreib- und Leseoperationen nochmals erhöht sowie die Latenzen minimiert. Die erzielten Fortschritte sollen anhand des TPC-C Benchmark im Vergleich zu einer Amazon Aurora DB verdeutlicht werden.

TPC-C-Benchmark: CockroachDB im Vergleich mit Amazon Aurora

(Bild: Cockroach Labs)

Für den Einsatz in geografisch verteilten Clustern stehen in der Enterprise-Edition von CockroachDB 2.0 zwei neue Funktionen parat. Ein Dashboard verschafft Datenbankmanagern einen Überblick der verteilten Gesamtstruktur. Es gewährt darüber hinaus detailliertere Einblicke in den Zustand und die Auslastung der einzelnen Nodes, sodass sich Performanceengpässe oder Stabilitätsprobleme erkennen lassen. Mit Blick auf Compliance-Anforderungen, wie sie unter anderem die neue EU-Datenschutzverordnung vorgibt, erlaubt die neue Funktion Geo-Partitioning eine gezielte Steuerung der Datenverteilung auf einzelne Rechenzentren. So kann beispielsweise die Datenhaltung eines Kunden bei Bedarf auf die Zentren in seiner Region begrenzt werden.

Geo-Partitioning erlaubt die globale Steuerung der Datenverteilung auf regionale Rechenzentren.

(Bild: Cockroach Labs)

Der Name der SQL-Datenbank verweist ganz bewusst auf das vielbeinige Insekt, das für seine Überlebensfähigkeit bekannt ist. Die auf eine horizontale Skalierung in der Cloud ausgelegte CockroachDB soll Ausfälle einzelner Knoten mit möglichst geringer Latenz abfangen, ohne dass Administratoren eingreifen müssen. Dabei vertraut sie streng auf konsistente ACID-Transaktionen (Atomicity, Consistency, Isolation und Durability). Die verteilte SQL-Datenbank mit einem transaktionalen und konsistenten Key-Value Store lehnt sich außerdem an Google Spanner an – unter den Gründern von Cockroach Labs finden sich auch ehemalige Google-Mitarbeiter.

Alle Details zu den Neuerungen in Version 2.0 finden sich im Blogbeitrag sowie in den Release Notes. Cockroach Labs stellt die Datenbank unter anderem für die Plattformen Windows, macOS und Linux zum Download parat. Neben der kostenfreien Open-Source-Variante bieten die Macher die Enterprise-Edition mit erweitertem Funktionsumfang und zusätzlichem Support an. (map)