PHP gevorderde |
|
Je moet eerst gaan normaliseren, en daarna gaan denormaliseren. (zie voor beide google).
Korte omschrijving:
Normalisere :
Zorg ervoor dat alle gegevens maar 1 keer worden opgeslagen, dit voorkomt redundantie. Leg verbanden doormiddel van foreign keys in je tabellen te gebruiken. Vergeet hierbij ook niet om ALTIJD niets gezeggende sleutels te gebruiken (veel gemaakte fout).
Hierna heb je een volledig genormaliseerde database.
Nu moet je je het volgende gaan bedenken:
Welke gegevens worden in je database straks veel gebruikt, en beslaan meerdere tabellen (koppelingen).
De gegevens die je vaak zult opvragen zul je hierdoor moeten denormaliseren. Een klein voorbeeld:
Een supermarkt gebruikt bij het scannen van artikelen bij een kassa 3 tabellen:
1. Artikelen
2. Prijzen
3. Voorraad
Men wil bij het scannen van een product gegevens gebruiken van alle drie de tabellen. Je wilt het productnaam weten, de prijs, en meteen de voorraad met 1 verminderen. Deze routine wordt eindeloos herhaald per dag. Hierdoor worden, bij een genormaliseerde database, drie tabellen continue belast. Je dient hier dus 1 tabel van te maken. Zodoende wordt maar 1 tabel aangesproken i.p.v 3 en is je database load dus minder.
Lang verhaal, en moeilijk om zo snel uit te leggen. Ik hoop dat je hier toch wat aan hebt. Lees je dus in via google over denormalisatie.
Succes! |