EINER der Gründe für die Normalisierung einer Datenbank ist die Verringerung der Redundanz (Ihrer „wiederholbaren Blöcke“)
Ein weiterer Grund besteht darin, "Rückwärts"-Abfragen zuzulassen. Wenn Sie wissen wollten, welches Video am „15 Pike Place“ gedreht wurde, schlägt Ihre JSON-Lösung fehl (Sie müssen auf sequentielles Lesen zurückgreifen und JSON decodieren, was den Zweck eines RDBMS zunichte macht)
Gute Faustregeln:
- Strukturierte Daten - in Tabellen und Spalten gesteckt
- Daten, die Teil von Abfragebedingungen sein könnten – in Tabellen und Spalten einfügen
- Unstrukturierte Daten, von denen Sie wissen, dass Sie sie niemals abfragen werden – in BLOBs, XML- oder JSON-Feldern abgelegt
Verwenden Sie im Zweifelsfall Tabellen und Spalten . Möglicherweise müssen Sie anfangs etwas mehr Zeit aufwenden, aber Sie werden es nie bereuen. Die Leute haben ihre Wahl für JSON-Felder (oder XML, für diese Angelegenheit) immer und immer wieder bereut. Habe ich "wieder" erwähnt?