Ik ben in een vurige discussie terecht gekomen over het modelleren van een database, we hebben in beide zaken een verschillende optiek over hoe het nou "best practise" is. Ik zal de situaties even voorleggen.
Het betreft een PostgreSQL database, wat verder niet veel van doen heeft met de situatie.
Het systeem zelf wordt vrij groot en leunt over het algemeen zeer op de database en de tabellen.
Er zullen een flink aantal tabellen aanwezig zijn, en daar kwam dus het meningsverschil
Optiek 1
1 grote tabel (dit kan naar verloop van tijd wel 10.000 tot een veelvoud worden
Optiek 2
Bovenstaande tabel splitsen in 3 tabellen. Deze zullen dus minder rijen bevatten máár de data zou wel sneller dubbel aanwezig kunnen zijn.
Ikzelf denk dat optie 2 veiliger is, namelijk:
- Data is gesplitst (risicospreiding)
- Minder data in een tabel is sneller te doorzoeken
- Backups maken en terugzetten gaat sneller
- Datacorruptie slaat niet direct een gat in het systeem.
Enfin, ik vroeg mij af wat de optieken van anderen waren op dit gebied. Ik moet eerlijk toegegeven dat modelleren niet mijn sterkste kant is en dat ik meer iemand ben die gaandeweg aanpassingen en uitbreidingen maakt zonder het bij het begin direct uit te denken.
Kortom; wat is slimmer? 1 grote tabel of 3 kleinere?
Het betreft een PostgreSQL database, wat verder niet veel van doen heeft met de situatie.
Het systeem zelf wordt vrij groot en leunt over het algemeen zeer op de database en de tabellen.
Er zullen een flink aantal tabellen aanwezig zijn, en daar kwam dus het meningsverschil
Optiek 1
1 grote tabel (dit kan naar verloop van tijd wel 10.000 tot een veelvoud worden
Optiek 2
Bovenstaande tabel splitsen in 3 tabellen. Deze zullen dus minder rijen bevatten máár de data zou wel sneller dubbel aanwezig kunnen zijn.
Ikzelf denk dat optie 2 veiliger is, namelijk:
- Data is gesplitst (risicospreiding)
- Minder data in een tabel is sneller te doorzoeken
- Backups maken en terugzetten gaat sneller
- Datacorruptie slaat niet direct een gat in het systeem.
Enfin, ik vroeg mij af wat de optieken van anderen waren op dit gebied. Ik moet eerlijk toegegeven dat modelleren niet mijn sterkste kant is en dat ik meer iemand ben die gaandeweg aanpassingen en uitbreidingen maakt zonder het bij het begin direct uit te denken.
Kortom; wat is slimmer? 1 grote tabel of 3 kleinere?