Ich sitze gerade an meinem Studienprojekt und grüble über die Datenbankfrage. Mein Datenmodell ändert sich ziemlich häufig, weil ich noch nicht alle Anforderungen final definiert habe und im Laufe des Projekts immer wieder neue Attribute dazukommen. Jetzt frage ich mich, ob ich deswegen komplett auf eine NoSQL-Lösung wie MongoDB umsteigen sollte, oder ob das bei einer relationalen DB mit sauberem Schema-Design (z. B. über Migrationen) auch gut handhabbar wäre.
Ich habe bisher verstanden, dass NoSQL vor allem bei großen, unstrukturierten Datenmengen und horizontaler Skalierung Vorteile bringt, aber mein Projekt ist eher klein und die Beziehungen zwischen den Daten sind schon relevant (also eigentlich klassisches Terrain für relational). Trotzdem nervt mich das ständige Anpassen der Tabellenstruktur.
Wie geht ihr in der Praxis an so eine Entscheidung ran? Gibt es klare Kriterien, an denen man sich orientieren kann, statt nur nach Bauchgefühl zu wählen? Und ganz wichtig für mich: Wie begründet man so eine Entscheidung später sauber in der Projektdokumentation, ohne dass es nach „ich fand NoSQL halt cooler“ klingt?