Anzeige

Verzweifelter Mann im Rechenzentrum

Wie verteilte NoSQL-Datenbanken auf Basis von Apache Cassandra einen neuen Standard für Desaster-Toleranz setzen.

Katastrophen wie Erdbeben, Feuer, Stromausfall oder Hardware-Schäden können Services unterbrechen und Daten im Rechenzentrum korrumpieren. Diese möglichen Auswirkungen soll eine Lösung für Desaster-Toleranz auf ein Minimum begrenzen, indem sie Anwendungen und Daten innerhalb eines für das Geschäft angemessenen Zeitraums nach einem Desaster wiederherstellt. Doch wie lange sind wir bereit zu warten, bis die App wieder läuft? Länger als drei Sekunden? So viel nahmen 53 Prozent der mobilen Seitenbesucher nicht in Kauf. Sie erwarteten ein schnelleres Laden der Seite und brachen ab, fand DoubleClick von Google heraus. Das war 2016. Im heutigen Datenzeitalter, in dem bis 2025 laut IDC-Studie das weltweite Datenvolumen auf kaum vorstellbare 175 Zettabytes ansteigen und bis zu 49 Prozent in Clouds gespeichert wird, zählt jede Zehntelsekunde. Daten müssen stets verfügbar sein, ohne Verzögerungen.

Heute wollen international tätige Unternehmen auch schnell eine Instanz ihres Dienstes direkt in den USA oder beispielsweise in Australien starten. Dafür bietet eine Architektur, die auf relationalen Datenbanken basiert, zu wenig. Denn sie lässt Unternehmen nur die Wahl, ihre Daten an einem einzigen Ort vorzuhalten, was für ihre Kunden bedeutet: Sie müssen warten. Die zweite Variante wäre ein doppelter Datenbankenbetrieb, der sich irgendwann kaum noch managen ließe.

Vernetzte Knotenpunkte

Bild 1: Viele international tätige Unternehmen benötigen global verfügbare Daten. (Quelle: DataStax)


Mit NoSQL basierend auf Apache Cassandra zu global verfügbaren Daten und skalierbaren Apps

Die gesuchte Alternative liefert NoSQL. Solch ein Datenbanksystem macht die Daten global verfügbar, indem es sie auf Servern speichert und über verschiedene Regionen auf unterschiedliche Cloud-Anbieter verteilt. Zusätzliche Kosten entstehen nicht, es tritt höchstens eine gewisse Latenz auf. Apache Cassandra ist ein verteiltes Open-Source-Datenbankmanagementsystem, welches das NoSQL-Datenbankschema genau in diesem Sinne – also ohne relationales Beschreiben der Daten – für die Desaster-Toleranz umsetzt.

Bisher war Apache Cassandra als spaltenorientierte und auf Java basierende NoSQL-Datenbank für andere Szenarien bekannt. Sie kann riesige Datenmengen für Big-Data-Anwendungen verarbeiten und eignet sich als Echtzeit-Datenspeicher für Online-Anwendungen mit vielfältigen Transaktionen. Das schließt extrem skalierbare Echtzeitanwendungen ein, für die sich die Datenbankleistung einfach erhöhen lässt. Für das Verdoppeln fügt man zum Beispiel im laufenden Betrieb einfach so viele Knoten hinzu, wie der Cluster bereits hatte.

Regeln für verteilte Daten

Warum die NoSQL-Datenbank nun einen neuen Standard für Ausfalltoleranz etablieren kann, liegt vor allem daran, dass sie das CAP- oder Brewer's Theorem umsetzt. Dieses beschreibt die Beziehung von Consistency (C), Availability (A) und Partition-Tolerance (P) und geht auf Eric Allen Brewer, Informatikprofessor und Vizepräsident für Infrastruktur bei Google, zurück. Es regelt alle Fragen für verteilte Daten und geht davon aus, dass sich nur zwei der drei Anforderungen (C, A, P) gut aufeinander abstimmen lassen. Praktische Relevanz besitzen CP- und AP-Systeme, da diese nicht anfällig gegenüber unvermeidlichen Netzwerkausfällen sind. In der CP-Optimierung ist eine Datenbank konsistent und partitionstolerant, aber weniger belastbar. Hochverfügbar und partitionstolerant wird es in der AP-Konfiguration, die aber nur möglicherweise konsistent ist.

Das bekannteste AP-System ist das globale Domain Name System (DNS): Es ist unglaublich ausfallsicher und überlebt die Netzwerkpartitionierung problemlos. In diesem Einsatzszenario bleibt Apache Cassandra flexibel, kann die Abfrageposition definieren und das Abfrageverhalten von CP bis AP konfigurieren.

Schnittmenge von Consistency, Availability, Partition Tolerance

Bild 2: Apache Cassandra setzt das CAP-Theorem optimal um. (Quelle: DataStax)


Gleichgestellte Knoten replizieren Daten präventiv

Laut CAP-Theorem müssen alle Single Points of Failure (SPoF) beseitigt werden. Fallen diese aus, geht auch im System nichts mehr. Jeder Masterknoten einer relationalen Datenbank ist ein SpoF. Mit Apache Cassandra baut man jedoch eine masterlose Architektur auf, in der die Knoten gleichgestellt sind. So kann jeder Knoten bei Apache Cassandra eine Anfrage verarbeiten, egal ob er lesen oder schreiben soll.

Fällt einer dieser Knoten aus, müssen die Daten von ihm an einem anderen Ort verfügbar sein – ohne Backup, weil das zu lange dauern würde. Die Lösung: Die Daten werden stattdessen vorläufig repliziert, bevor sie jemand benötigt. Mit Cassandra erstellt man dazu eine Art SQL-Datenbank, die den Replikationsfaktor definiert, um jedes Datenelement in der gewünschten Anzahl von Knoten zu replizieren. Dafür ist zusätzlicher Speicherplatz nötig. Dieser kostet allerdings wenig im Vergleich zu einem möglichen Reputationsverlust, Auftragsausfällen und einem langfristigen wirtschaftlichen Schaden. Zur Ausfalltoleranz trägt zudem wesentlich bei, dass sich ein Apache Cassandra Cluster selbst wiederherstellen kann.

Desaster-tolerante Datenbank kommt an

Das Aufsetzen und Warten eines Apache Cassandra Clusters verlangt Fachkenntnisse und ist aufwändig. Dies wird sich jedoch für Unternehmen rechnen, die ihre Daten nicht auf einem einzigen Server halten, sondern geografisch verteilen wollen. Die Nachteile, weder das Datenmodell einschränken noch Kaskadenoperationen durchführen zu können, kompensiert ihre schnell lesende und schreibende NoSQL-Datenbank. Administratoren können den gesamten Cluster so konfigurieren, dass ein schnell verteiltes, Desaster-tolerantes System entsteht, welches genau auf ihre Situation zugeschnitten ist. Mittlerweile haben deshalb viele bekannte Top-Unternehmen Apache Cassandra oder seine kommerzielle Version, DataStax Enterprise, implementiert. Unter anderen vertrauen Apple, Netflix, Twitter, Sony, eBay, Walmart, FedEx und viele andere dem Flaggschiff unter den Cloud-Datenbanken. Es zeigt sich: Eine ausfallsichere Datenbank, die nicht „vollläuft“, ist für viele Unternehmen unterschiedlicher Branchen relevant.

Aleksandr Volochnev, Developer Advocate
Aleksandr Volochnev
Developer Advocate, DataStax
(Quelle: DataStax)

Newsletter Anmeldung

Smarte News aus der IT-Welt

Sie möchten wöchentlich über die aktuellen Fachartikel auf it-daily.net informiert werden? Dann abonnieren Sie jetzt den Newsletter!

Newsletter eBook

Exklusiv für Sie

Als Newsletter-Abonnent erhalten Sie das Booklet „Social Engineering: High Noon“ mit zahlreichen Illustrationen exklusiv und kostenlos als PDF!

 

Artikel zu diesem Thema

Warnung Schild: Are You Ready
Sep 11, 2019

Was für ein Desaster! Konzepte zur Krisenbewältigung

Ein Desaster macht aus, dass es sich im Vorfeld nicht ankündigt. Als katastrophales…
Disaster Recovery
Aug 19, 2019

Der Tag, an dem das Rechenzentrum stillstand

Wenn es darum geht, auf den kompletten Ausfall des Rechenzentrums vorbereitet zu sein,…

Weitere Artikel

Sicherheit Steuerung

Hacken per Klimaanlage, Aufzug im freien Fall?

Der Aufzug in freien Fall gehört zweifelsohne in die Welt der Hollywood-Filme, aber ein digitalisierter Aufzug ist so smart wie angreifbar. Und schon vor mehreren Jahren spielte das Magazin Wired.com durch, wie man mittels Klimaanlage ein Stromnetz hackt.
Security

Lösungen für 4 oft übersehene Sicherheitsprobleme

Sämtliche Internetzugriffe des Unternehmens werden über Black- und Whitelists geschleust. Das betriebseigene WLAN nur für die Privatgeräte der Mitarbeiter ist auch physisch vom Firmennetzwerk völlig abgetrennt. Jeder neue Kollege im Haus bekommt durch die IT…
Cyber Attacke

TeamTNT nutzt legitimes Tool gegen Docker und Kubernetes

Bei einem jüngst erfolgten Angriff nutzten die Cyberkriminellen der TeamTNT-Gruppe ein legitimes Werkzeug, um die Verbreitung von bösartigem Code auf einer kompromittierten Cloud-Infrastruktur zu vermeiden und diese dennoch gut im Griff zu haben. Sie…
Cyber Security

Kosten-Explosion durch Cyber-Angriffe

Die Ergebnisse des Hiscox Cyber Readiness Reports 2020 zeigen eine positive Tendenz: Vielen Unternehmen ist mittlerweile bewusst, wie wichtig Cyber-Sicherheit ist. Die Zahl der gut vorbereiteten „Cyber-Experten“ steigt zum ersten Mal deutlich an…
Netzwerk-Sicherheit

Remote-Arbeit verschärft Herausforderungen für die Unternehmenssicherheit

Juniper Networks, ein Anbieter von sicheren, KI-gesteuerten Netzwerken, präsentiert die ersten Ergebnisse eines internationalen Marktforschungsprojektes. Diese zeigen, dass traditionelle Ansätze zum Schutz des Netzwerks die Herausforderungen angesichts von…

Anzeige

Newsletter Anmeldung

Smarte News aus der IT-Welt

Sie möchten wöchentlich über die aktuellen Fachartikel auf it-daily.net informiert werden? Dann abonnieren Sie jetzt den Newsletter!

Newsletter eBook

Exklusiv für Sie

Als Newsletter-Abonnent erhalten Sie das Booklet „Social Engineering: High Noon“ mit zahlreichen Illustrationen exklusiv und kostenlos als PDF!