EN af grundene til at normalisere en database er at reducere redundans (dine "gentagelige blokeringer")
EN ANDEN grund er at tillade "baglæns" forespørgsel. Hvis du ville vide, hvilken video der blev optaget på "15 Pike Place", vil din JSON-løsning mislykkes (du bliver nødt til at ty til sekventiel læsning, afkodning af JSON, som besejrer formålet med en RDBMS)
Gode tommelfingerregler:
- Strukturerede data - læg i tabeller og kolonner
- Data, der kan være en del af forespørgselsbetingelser - læg i tabeller og kolonner
- Ustrukturerede data, som du ved, at du aldrig vil forespørge efter - indsat i BLOB-, XML- eller JSON-felter
Hvis du er i tvivl, så brug tabeller og kolonner . Du skal måske bruge lidt ekstra tid i starten, men du vil aldrig fortryde det. Folk har fortrudt deres valg til JSON-felter (eller XML, for den sags skyld) igen og igen og igen. Nævnte jeg "igen"?