Was ist eine relationale Datenbank?
- Aufbau und Funktionsweise einer relationalen Datenbank
- Beispiele für relationale Datenbanken
- Vor- und Nachteile eines relationalen Datenbankmodells
Unterschied relationale und nicht-relationale Datenbanken
Datenbanken sind IT-Systeme, die Daten speichern, verwalten und zum Abruf bereitstellen. Sie teilen sich grob in zwei Kategorien: Relationale und nicht-relationale Datenbanken. Relationale Datenbanken organisieren Daten in Tabellen. Die Tabellen stehen miteinander in Beziehung und beeinflussen sich gegenseitig. Viele Web- und Businessanwendungen arbeiten mit relationalen Datenbankmanagementsystemen (RDBMS). Eine standardisierte Sprache namens „Structured Query Language“ (SQL) ist dabei die Basis, um Datenbankstrukturen zu erstellen und zu verwalten sowie Daten abzurufen und zu bearbeiten.
Nicht-relationale Datenbanken, auch als NoSQL-Datenbank bekannt, speichern Daten hingegen nicht in traditionellen Tabellen. Diese Datenbanksysteme verwenden als alternative Datenbankmanagementsysteme (DBMS) andere Datenmodelle und eignen sich für komplexe, unstrukturierte Datentypen, die nicht in einem festen, organisierten Format vorliegen – wie zum Beispiel Texte, Bilder, Videos und E-Mails.
Aufbau und Funktionsweise eines relationalen Datenbankmodells
Ein relationales Datenbankmodell zeichnet sich dadurch aus, dass es wenig Speicherplatz verbraucht und sich Daten schnell und weitgehend fehlerfrei finden, ändern und löschen lassen. Dafür organisiert die relationale Datenbank Daten in Tabellen. Jede Zeile repräsentiert einen Datensatz, während jede Spalte ein bestimmtes Attribut enthält. Typischerweise steht in der ersten Spalte der sogenannte Primärschlüssel. Seine Aufgabe ist es, den Datensatz eindeutig zu identifizieren.
Ein Beispiel ist eine eindeutige Kundennummer (Primärschlüssel), die jede Kundin und jeden Kunden (Datensatz) identifiziert – selbst dann, wenn zwei Personen denselben Namen haben. Die Fremdschlüssel hingegen haben die Aufgabe, Beziehungen zwischen verschiedenen Tabellen zu erstellen.
Gut zu wissen: Um eine relationale Datenbank optimal zu strukturieren und das Maximum aus Leistung und Speicherplatz herauszuholen, bietet sich eine Normalisierung der Datenbank an.
Beispiel für eine relationale Datenbank
Attribut, Fremdschlüssel, Primärschlüssel: Den Aufbau und die Funktionsweise einer relationalen Datenbank erklären wir hier anhand eines Beispiels.
Eine Buchhändlerin betreibt eine relationale Datenbank. In einer Tabelle namens „Bücher“ speichert sie Titel und Autoren aller Bücher im Sortiment. In der Tabelle „Autoren“ finden sich alle Informationen zu den Autoren.
BuchID und AutorID sind die Primärschlüssel der jeweiligen Tabellen. Titel und Name sind Attribute, die funktional vom Primärschlüssel abhängen. AutorID ist zudem ein Fremdschlüssel in der Tabelle „Bücher“ und bringt über eine Verlinkung den Namen des Autors als Information ein, ohne ihn ausschreiben zu müssen. Diese Übertragung innerhalb des Datenbanksystems funktioniert über Schnittstellen und in beliebig vielen Tabellen gleichzeitig.
Der Vorteil liegt auf der Hand: Es treten keine Redundanzen auf, die Speicherplatz verbrauchen. Zudem lassen sich Daten schnell und fehlerfrei ändern. Nachträgliche Ergänzungen, etwa ein zusätzlicher Vorname in der Autoren-Tabelle, gelangen mit einem Schlag in sämtliche Tabellen, die AutorID als Fremdschlüssel nutzen.
BuchID | Titel | AutorID |
---|---|---|
1 | Pippi Langstrumpf | 1 |
2 | Hecken richtig schneiden | 2 |
AutorID | Name |
---|---|
1 | Astrid Lindgren |
2 | Peter Wiese |
MySQL, PostgreSQL und MariaDB: Beispiele für relationale Open-Source-Datenbanken
Wollen Sie eine relationale Datenbank nutzen, können Sie zwischen verschiedenen Varianten wählen.
- Das Datenbanksystem MySQL ist mit mehr als 50 Millionen Installationen weltweit das beliebteste Open-Source-Datenbankmanagementsystem. Sie eignet sich besonders für Websites mit dynamischen Inhalten, etwa für einen WordPress-Blog. Hier kann die relationale Datenbank zum Einsatz kommen, um Blogposts, Benutzerinformationen, Kommentare und andere Inhalte zu speichern und zu verwalten. Anwendende schätzen MySQL besonders für seine Einfachheit und Effizienz.
- Eine Weiterentwicklung von MySQL und ebenfalls open source ist MariaDB. Eine weltweite Community sorgt für zusätzliche Funktionen und Sicherheitsverbesserungen. Das Datenbanksystem MariaDB eignet sich dadurch nicht nur für Websites, sondern auch für komplexere Projekte – etwa für die Verwaltung von Verkaufsdaten und Kundeninteraktionen im Customer-Relationship-Management (CRM) System eines Unternehmens.
- Ebenfalls beliebt und open source ist das Datenbankmanagementsystem PostgreSQL. Im Vergleich zu MySQL bietet es erweiterte Funktionen für komplexe und datenintensive Anwendungen – etwa Unterstützung für komplexe Abfragen und erweiterte Datentypen wie JSON und XML. PostgreSQL kommt beispielsweise häufig für umfangreiche Datenanalysen in Projekten wie E-Commerce-Shops zum Einsatz.
Das sind Vorteile einer relationalen Datenbank
Einfaches Datenmodell
Relationale Datenbanken verwenden eine einfache Struktur. Diese macht es beispielsweise möglich, Kundeninformationen wie Name, Adresse und Telefonnummer einfach in einer Tabelle zu organisieren und zu verwalten.
Geringe Datenredundanz
Normalisierungsvorschriften vermeiden Redundanzen in relationalen Datenbanken, also das Speichern unnötiger Informationen.
Ein Beispiel: Durch die Trennung von Kundendaten in einer eigenen Kundentabelle und die Verwendung der KundenID als Fremdschlüssel in der Tabelle für Bestellungen lässt sich die redundante Speicherung von Kundeninformationen vermeiden.
Leichte Wartbarkeit
Daten in relationalen Datenbanken lassen sich schnell aktualisieren und löschen. Da die Tabellen über Fremdschlüssel miteinander verknüpft sind, reicht es beispielsweise aus, die Anschrift der kaufenden Person in der Kundentabelle zu ändern. Die Information überträgt sich automatisch auf alle weiteren Tabellen, die über einen Fremdschlüssel mit der Kundentabelle verbunden sind.
Einfache Abfragen
In relationalen Datenbanken können Anwendende bestimmte Informationen schnell abfragen. Eine Online-Händlerin beispielsweise könnte über die Suchfunktion herausfinden, welche Kundinnen und Kunden aus einem bestimmten Postleitzahlgebiet stammen.
Das sind Nachteile einer relationalen Datenbank
Nicht für alle Datentypen geeignet
Relationale Datenbanksysteme eignen sich nicht, um unstrukturierte Daten zu speichern – etwa Textdokumente, Bilder, Videos und andere Multimedia-Inhalte.
Für große Datenmengen bedingt geeignet
Relationale Datenbanken können große Datenmengen verwalten. Es kann aber unter Umständen schwierig und teuer werden, zusätzliche Server hinzuzufügen, um mehr Kapazität bereitzustellen. Eine E-Commerce-Website beispielsweise, die auf einer relationalen Datenbank basiert, könnte deshalb Schwierigkeiten haben, mit einem plötzlichen Anstieg des Website-Traffics umzugehen.
Komplizierte Datenverhältnisse
Es ist oft komplex und ineffizient, hierarchische oder stark vernetzte Datenstrukturen, wie sie in sozialen Netzwerken oder Unternehmenshiercharchien vorkommen, mit einem relationalen Datenbankmodell zu modellieren.
MySQL als Anwendung inklusive im STRATO Hosting-Paket
STRATO bietet Ihnen mit zertifizierten Rechenzentren und einer klimafreundlichen Infrastruktur ein sicheres und nachhaltiges Umfeld für Ihre Daten. Ihr STRATO Hosting unterstützt alle gängigen CMS-Systeme wie zum Beispiel WordPress, Drupal, Joomla! und Typo3. Sie lassen sich in wenigen Minuten als Apps installieren.
Auf Ihrem Webspace steht damit alles bereit, um eine MySQL-Datenbank zu erstellen und eine Website oder einen Online-Shop professionell zu verwalten.
Wählen Sie jetzt Ihren Wunschtarif: