Die richtige Datenbank finden

Datensilos für den Schrebergarten

MySQL oder Postgres, Firebird oder lieber doch SQLite? Die Wahl der richtigen Datenbank für den Desktop fällt nicht schwer, wenn man die Hintergründe kennt.

Welche Datenbank darf's denn sein: MySQL [1] oder doch besser PostgreSQL [2]? Ist Firebird [3] das Nonplusultra oder SQLite [4]? In der Diskussion darüber tauchen nicht selten eine Fülle von Begriffen auf, die nur Datenbank-Profis verstehen, Einsteigern aber lediglich die Stirn runzeln lassen. Dabei ist die Sache ganz einfach: Für den Hausgebrauch sind wenigstens zwei Drittel der klangvollen Features ohne Bedeutung.

Warum baut man sie dann aber erst ein? Ganz einfach: Das Adressbuch oder der CD-Katalog auf dem Einzelplatzrechner stellen für eine Datenbank eher Ausnahmeanwendungen dar – typischerweise bedient sie viele Anwender, verwaltet deutlich größere Datenmengen, läuft auf einem speziellen Server und spielt eine verantwortungsvolle Schlüsselrolle in einer geschäftskritischen Applikation. Daraus resultieren besondere Anforderungen an Verfügbarkeit und Performance, an Skalierbarkeit und die Administration, an die Organisation und Integrität der Daten und nicht zuletzt an den Support.

Doch alles, was die Datenbank tut, um sich diesen Forderungen gewachsen zu zeigen, ist für den Heimanwender irrelevant. Er greift auf eine für ihre Verhältnisse lächerliche Datenportion nur gelegentlich und exklusiv zu und verkraftet wahrscheinlich selbst einen Ausfall ohne ernsthaften Schaden. Seine Bedürfnisse lasen sich mit einer kleinen Untermenge der Datenbank-Features befriedigen – und nur wenige Eigenschaften sind für ihn wirklich wichtig.

Ganz oder gar nicht

Getrost weghören kann der Alleinanwender beispielsweise bei all den komplizierten Vorkehrungen, mit denen die Datenbank die Integrität ihrer Inhalte angesichts zahlreicher paralleler Zugriffe sichert. Ob sie ihre Tabellen für jeweils einen Nutzer nur komplett oder auch zeilenweise reservieren kann, das spielt für den Einzelnutzer ebenso wenig eine Rolle wie Two-Phase-Commit, MVCC oder die Frage, ob sich durch Tablespaces oder Tabellenpartitionierung die Festplattenzugriffe gezielt auf mehrere Disks oder logische Laufwerke verteilen lassen. All das sind wichtige Fragen im Unternehmenseinsatz – sie stellen sich aber gar nicht erst, wenn es nur einen Anwender gibt.

Auch als Datenbank-Neuling sollte man dagegen wissen, dass die Datenbank hinter den Kulissen mittels so genannter Transaktionen dafür sorgt, dass eine Operation entweder nur komplett oder aber gar nicht ausgeführt wird. Dazu ein Beispiel: Stürzte etwa der Bankserver bei einer Überweisung zwischen Abbuchung und Gutschrift ab und könnte anschließend nicht erkennen, dass er diesen Arbeitsschritt erst zur Hälfte erledigt hat, wären zwei unzufriedene Kunden die Folge. Das verhindern Transaktionen nach dem ACID-Prinzip.

Geschickte Fragen

Mit einem persönlichen Adressbuch oder dem Katalog der eigenen Briefmarkensammlung hat eine Datenbank keine Performanceprobleme – es sei denn, der Anwender vergewaltigt sie mit sinnlosen oder ineffizienten Operationen. Deshalb kümmert den Einzelplatznutzer auch das Thema Performance nicht in der selben Weise wie den Profi. Weder die komplizierte Konfiguration für bestimmte Tuning-Ziele noch das Multithreading oder Load Balancing noch die Unterstützung mehrerer CPUs müssen ihn beschäftigen. Auch Skalierbarkeit wird erst bei steigender Nutzerzahl und Datenmenge relevant. Ebenfalls keine Themen für Heimanwender stellen Clusterfähigkeit, Replikationen, Point-In-Time-Recovery oder Online-Backups dar. Eine Offline-Sicherung steht allerdings auch ihm gut zu Gesicht.

Dagegen ist es nützlich zu wissen, dass die Datenbank Abfragen nie blindlings übernimmt, sondern immer in eine interne Form wandelt und dabei die einzelnen Schritte optimiert. Dabei kann der Anwender durch geschicktes Formulieren der Abfrage und durch die Anlage nützlicher Indizes helfen. Was man dabei verschenkt, lässt sich durch andere Tuning-Bemühungen in der Regel nicht mehr aufholen.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 04/2017: SPEZIAL-DISTRIBUTIONEN

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

WLAN lässt sich nicht einrichten
Werner Hahn, 21.03.2017 14:16, 0 Antworten
Dell Latitude E6510, Ubuntu 16.4, Kabelbox von Telecolumbus. Nach Anklicken des Doppelpfeiles (o...
"Mit Gwenview importieren" funktioniert seit openSuse 42.2 nicht mehr
Wimpy *, 20.03.2017 13:34, 2 Antworten
Bisher konnte ich von Digitalkamera oder SD-Karte oder USB-Stick Fotos mit Gwenview importieren....
Ich habe eine awk Aufgabe und bekomme es nicht so Recht hin
Dennis Hamacher, 10.03.2017 18:27, 1 Antworten
Ich hoffe Ihr könnt mir dabei helfen oder mir zeigen wie der Befehl richtig geschrieben wird. Ich...
Unter Linux Open Suse Leap 42.1 einen Windows Boot/ ISO USB Stick erstellen...
Tim Koetsier, 07.03.2017 15:26, 1 Antworten
Hallo, weiß jemand wie ich oben genanntes Vorhaben in die Tat umsetzen kann ? Wäre echt dankba...
Druckertreiber installieren OpenSuse42.1
Tim Koetsier, 07.03.2017 15:22, 1 Antworten
hallo, kann mir BITTE jemand helfen ich verzweifel so langsam. Habe einen Super Toner von Canon...