c't 23/2023
S. 96
Test & Beratung
Datenbanken für alle Fälle

Datenbank für alle Fälle

Mehr als SQL: Die richtige Datenbank für Ihr Projekt

Ihre Software soll Daten speichern und schnell wiederfinden und am besten sollen auch mehrere Nutzer gleichzeitig darauf zugreifen? Dann muss eine Datenbank her – nur welche? Ein Streifzug durch das Angebot, der bekannte Klassiker sortiert, Spezialisten vorstellt und die Strategien der Neulinge einordnet.

Von Jan Mahn

Ein neues Softwareprojekt steht an. Voller Vorfreude stürzen Sie sich in die Planung: Die Programmiersprache steht schnell fest, auch auf ein Framework haben Sie sich mit Ihren Kollegen rasch geeinigt. Wie bei jedem neuen Projekt haben Sie sich geschworen, diesmal die Fehler vergangener Entwicklungen nicht zu machen und jeden Schritt gründlich zu überlegen. Schnell ist das Fundament angelegt, ein Git-Repository erstellt und Sie erreichen den Punkt, an dem das junge Softwaregerüst die ersten Daten speichern soll. „Binde doch schnell eine SQLite-Datei ein und entwickle erstmal damit, da hängen wir dann später eine MySQL- oder PostgreSQL-Datenbank dran“, schlägt ein Kollege vor. Halt, hatten Sie sich nicht darauf geeinigt, diesmal jeden Schritt sorgfältig zu durchdenken? Sind MySQL oder PostgreSQL wirklich die beste Wahl für das Projekt, nur weil das Gehirn Ihres Kollegen bei der Abfrage

SELECT * FROM databases ORDER by popularity DESC LIMIT 2

ausgerechnet diese beiden Treffer ausgespuckt hat? Oder ist es an der Zeit, mal über den Tellerrand zu blicken? Der Markt an Datenbankmanagementsystemen (DBMS) ist groß – viele sind quelloffen, einige kann man bequem online testen, bevor man sie selbst installiert. Einige sind eher Generalisten, andere hochspezialisiert auf eine Aufgabe. Und gleichzeitig ist der Markt ständig in Bewegung, Start-ups kommen, Firmen werden verkauft, Open-Source-Projekte wechseln die Lizenz und Forks spalten sich ab. Als Entwickler ist es schwer, da den Überblick zu behalten. Der folgende Wegweiser ist keinesfalls vollständig – bei Dutzenden aktiv entwickelten DBMS ist das nicht möglich. Er soll vielmehr eine Entscheidungshilfe darstellen und Trends aufzeigen.

Kommentieren