Database Reference
In-Depth Information
am besten funktioniert, haben Sie als Facebook bei Weitem zu viele Daten,
um eine nutzen zu können. Sie werden stattdessen eher eine „Big Data“-
Implementierung wie HBase oder Riak wählen. Das zwingt Sie in Richtung
eines spaltenorientierten oder eines Schlüssel/Wert-Speichers. In anderen
Fällen, wo Sie eine relationale Datenbank als beste Option für Banktrans-
aktionen ansehen, ist es hingegen nützlich zu wissen, dass Neo4j ebenfalls
ACID-Transaktionen unterstützt, wodurch sich Ihre Optionen vergrößern.
Diese Beispiele sollen nur hervorheben, dass es bei der Wahl einer (oder meh-
rerer) Datenbank(en) neben der Gattung noch andere Aspekte zu berücksich-
tigen gilt, um die Aufgabe bestmöglich lösen zu können. Die generelle Regel
lautet, dass mit der Größe der Daten die Fähigkeiten bestimmter Datenbank-
Gattungen abnehmen. Spaltenorientierte Datenspeicher-Implementierungen
sind häufig so konzipiert, dass sie über Rechenzentren hinweg skalieren und
die größten „Big Data“-Datenmengen unterstützen, während Graphen die
kleinsten unterstützen. Das ist aber nicht immer der Fall. Riak ist ein groß
angelegter Schlüssel/Wert-Speicher, der Daten über hunderte oder tausende
von Knoten verteilen kann, während Redis entwickelt wurde, um auf einem
Knoten zu laufen, aber die Möglichkeit einiger Master/Slave-Replicas oder
durch Clients verwalteter Shards bietet.
Es gibt bei der Wahl einer Datenbank noch sehr viel mehr Aspekte zu be-
achten, etwa Dauerhaftigkeit, Verfügbarkeit, Konsistenz, Skalierbarkeit und
Sicherheit. Sie müssen entscheiden, ob Ad-hoc-Queries wichtig sind oder ob
Mapreduce reicht. Bevorzugen Sie ein HTTP/REST-Interface oder sind Sie be-
reit, einen Treiber mit eigenem Binärprotokoll zu verwenden? Selbst kleinere
Erwägungen, etwa die Möglichkeit des Massenimports von Daten, könnten
für Sie von Bedeutung sein.
Um den Vergleich zwischen diesen Datenbanken zu vereinfachen, stellen wir
in Anhang 1, Datenbank-Übersichtstabellen , auf Seite 343 eine entsprechen-
de Tabelle zur Verfügung. Diese Tabelle enthält keine umfassende Liste al-
ler Features. Vielmehr soll sie einen schnellen Vergleich zwischen den von
uns betrachteten Datenbanken ermöglichen. Beachten Sie die Versionen der
jeweiligen Datenbanken. Die Features ändern sich häufig, weshalb Sie die
Werte mit aktuellen Werten abgleichen sollten.
9.3 Wie geht es weiter?
Skalierungsprobleme moderner Anwendungen fallen nun in den Bereich des
Datenmanagements. Wir haben in der Evolution von Anwendungen einen
Punkt erreicht, wo die Wahl von Programmiersprache, Framework und Be-
triebssystem - und sogar der Hardware und des Betriebs (dank „Virtual Ma-
Search WWH ::




Custom Search