Fachartikel

Datenbanken im Überblick (1)

Datenbanken sind in der IT allgegenwärtig, doch nicht jede Datenbank eignet sich für jede Aufgabe. Gleichzeitig gibt es immer mehr Datenbankarten, aus denen Administratoren für neue Setups wählen können. Relationale Datenbanken, Zeitreihendatenbanken, NoSQL-Systeme, verteilte DBs – es ist nicht schwierig, dabei den Überblick zu verlieren. Wir verraten, welche DBs existieren und was Admins im Hinterkopf haben sollten. Im ersten Teil werfen wir einen Blick auf den Klassiker relationale Datenbanken.
Die unterschiedlichen Datenbanktypen eignen sich je nach dem vorgesehen Einsatzszenario.
Eine der klarsten Entwicklungen der vergangenen 20 Jahre besteht hinsichtlich der IT darin, dass Technik sich in den Alltag von immer mehr Menschen hineinentwickelt hat. Wo früher eine statische HTML-Website per FTP hochgeladen wurde, werkelt heute ein kompliziertes Content Management System wie WordPress oder Joomla. Der Vorteil: Auch Nicht-Profis haben die Möglichkeit, Inhalte ins Netz zu stellen, weil die Backends von Drupal & Co. einen intuitiv zu nutzenden Texteditor anbieten und die Einstiegshürde damit deutlich senken.

Implizit hat das sogenannte Web 2.0, in dem jeder irgendwie mitmachen kann, den Aufstieg von Datenbanken massiv gefördert. Endanwendersoftware wie ein CMS ist ohne Datenbank im Hintergrund praktisch nicht sinnvoll zu betreiben. Denn irgendwo müssen die Inhalte, die Gäste auf einer Website sehen, ja herkommen. Die Dynamik und Flexibilität, die etwa ein CMS für den (komfortablen) Betrieb einer Website erzwingen, wären ohne Datenbank praktisch nicht zu erreichen. Und nicht nur hier spielen Datenbanken eine wichtige Rolle. Fast jede moderne IT-Anwendung muss auf irgendeine Weise ihre eigenen Nutzdaten verwalten. Vor allem deshalb wirkt es heute so, als seien MariaDB, PostgreSQL & Co. allgegenwärtig.

Zahlreiche Datenbanktypen am Start
Gerade die jüngere Vergangenheit hat beim Thema Datenbanken allerdings zu einer deutlichen Diversität geführt. Zu den relationalen Datenbanken haben sich längst andere Datenbanktypen gesellt: Zeitreihendatenbanken, NoSQL-Implementierungen, Key-Value-Speicher und etliche weitere Werkzeuge streiten heute um die Gunst der Nutzer.

Aus Sicht eines Administrators wie aus Sicht eines Nutzers und sogar aus der eines Entwicklers besteht dabei eine zentrale Gefahr: Fällt für eine bestimmte Aufgabe die Wahl auf die falsche Datenbank, führt das oft zu miserabler Performance oder funktioniert überhaupt nicht. Die Flut an Datenbanktypen der vergangenen Jahre hat gleichzeitig aber dazu geführt, dass viele heute gar keinen genauen Überblick mehr über die Situation am Markt haben. Deshalb listen wir im Anschluss die gängigsten Datenbanktypen auf und erklären, für welche Art von Daten diese sich gut eignen und wo der Admin lieber Alternativen ins Auge fassen sollte.
Relationale Datenbanken: Der Klassiker
Zwar sind relationale Datenbanken zweifelsohne der Klassiker im DB-Universum, gerade deshalb ist es an dieser Stelle aber sinnvoll, auch auf sie im Detail einzugehen. Mit einer relationalen Datenbank – oft auch als RDBMS bezeichnet – dürfte beinahe jeder Anwender und jeder Administrator bereits zu tun gehabt haben. Denn bei diesen Datenbanken handelt es sich um die klassischen Vertreter, die meist gemeint sind, wenn von Datenbanken ohne eine weitere Einschränkung die Rede ist. Kurzum also: MariaDB, MySQL, PostgreSQL, MS SQL und dergleichen viele mehr.

Relationale Datenbanken heißen so, weil sie unter der Haube auf ein so genanntes relationales Datenmodell setzen, das nach einer bestimmten Hierarchie organisiert ist. Es geht zurück auf E.F. Codd und erschien als Konzept erstmals in den Jahren 1970 bis 1972. Codd war Mathematiker, entwickelte aber auch das relationale Datenmodell, das später die Grundlage für alle heute etablierten, großen Datenbanksysteme wurde.

Relational ist das System, weil es verschiedene Entitäten definiert und diese per Attribut in eine Beziehung zueinander setzt. Klingt in der Theorie total kompliziert, ist eigentlich aber recht leicht, denn die Entitäten sind in modernen relationalen Datenbanken nichts anderes als die Reihen in Datenbanken. Diese sind in Spalten eingeteilt, die Spalte fungiert also wie ein Attribut für eine Reihe. Reihe und Spalte zusammen ergeben eine Beziehung, im Alltag meist einfach "Tabelle" genannt.

Relationale Datenbanken kommen mit einem riesigen Vorteil daher: sie sind in der Lage, die Garantien der ACID-Regeln (Atomicity, Consistency, Isolation, Durability) problemlos zu erfüllen, haben lange Entwicklungszeiten hinter sich und gelten als entsprechend stabil und robust. Obendrein sind die allermeisten RDBMS heute nicht mehr kompliziert aufzusetzen. MariaDB, PostgreSQL & Co. liegen jeder modernen Linux-Distribution bei, sind schnell installiert und bereit für den Einsatz.

Hinzu kommt, dass RDBMS-Systeme aufgrund ihrer internen Struktur einen guten Kompromiss zwischen der verfügbaren Performance einerseits und der Sicherheit der Daten andererseits darstellen. Aus einer MariaDB oder PostgreSQL-Datenbank geht noch am ehesten dann etwas unfreiwillig verloren, wenn der Admin oder der Nutzer es aus Unachtsamkeit selbst löscht. Dass hingegen die großen Vertreter der RDBMS-Kategorie hart crashen und Daten eigenständig vernichten, kommt heute nur noch selten vor.

Im ersten Teil des Artikels werfen wir einen Blick auf den Klassiker relationale Datenbanken. In der zweiten Folge geht es um verteilte Datenbanken und No-SQL-Systeme. Im dritten Teil des Workshops widmen wir uns Zeitreihendatenbanken und Key-Value-Speichern.
5.09.2022/ln/Martin Loschwitz

Nachrichten

Videobearbeitung in der AWS-Cloud [9.09.2022]

Quantums Dateiystem "StorNext" ist ab sofort als Abonnement im AWS Marketplace verfügbar. Mit Quantum StorNext in AWS sollen Nutzer ihre Inhalte unter anderem für die Videoproduktion hochflexibel verwalten können. So lassen Videos in der Cloud von beliebigen Standorten bearbeiten, ohne dass Dateien zwischen einzelnen Benutzern kopiert oder übertragen werden müssen. [mehr]

Spürhund für Datenbanken [17.08.2022]

Die Überwachungs- und Sicherheitsplattform für Cloudanwendungen aus dem Hause Datadog erweitert ihre Fähigkeiten um das Monitoring von Microsoft SQL Server und Microsoft Azure. Die Unterstützung baut auf dem Produkt "Deep Database Monitoring" auf und will kostspielige und langsame Queries, falsche Indizes in SQL-Server- oder Azure-Datenbanken sowie Engpässe in Anwendungen aufzeigen. [mehr]

Tipps & Tools

Download der Woche: CheckDrive 2022 [28.09.2022]

Egal ob HDD oder SSD – auch im Jahr 2022 ist die Festplatte das anfälligste Verschleißteil eines Computers. Eine gelegentliches Durchleuchten ihres Zustands kann also nie schaden. Hier leistet das Windows-Tool "CheckDrive 2022" gute Dienste. Es erkennt auftretende Fehler und kann diese sogar beheben. [mehr]

Storage-Turbo für seismische 3D-Analyse [8.09.2022]

High Perfomance Computing gehört seit 20 Jahren zum Portfolio der DUG Technology. Das Unternehmen ermöglicht damit beispielsweise geowissenschaftliche Analysen für die Öl- und Gasindustrie. Um den flexiblen Bedarf der Kunden zu erfüllen und neue Märkte zu erschließen, bietet das Unternehmen nun HPC-as-a-Service an. Bei Projekten im PByte-Bereich stößt aber die HDD-basierte Infrastruktur rasch an ihre Grenzen. Unser Fachartikel online zeigt, wie eine neue All-Flash-Umgebung Abhilfe schafft, die auf das Konzept "Disaggregated Shared Everything" setzt. [mehr]

Buchbesprechung

The Security Culture Playbook

von Perry Carpenter und Kai Roer

Anzeigen