Autor
E. F. Codd
1 fișă de lectură din 1 carte · 1970.
1 fișă
A Relational Model of Data for Large Shared Data Banks · 1970
Fiecare atribut depinde de cheie, de toată cheia și numai de cheie.
Codd a propus în 1970 ceva ce azi pare evident: tabele (relații) cu rânduri și coloane, chei primare care identifică un rând și chei străine care leagă tabelele, plus un limbaj declarativ în care spui ce rezultat vrei, nu ce fișiere să deschidă mașina. Normalizarea vine din aceeași idee: dacă o adresă de client apare în o mie de comenzi, o corectezi în o mie de locuri sau în niciunul. A treia formă normală se ține minte într-o frază: fiecare atribut depinde de cheie, de toată cheia și numai de cheie. Pentru un depozit de date, normalizarea e o alegere, nu o lege. Sursele sunt normalizate ca să scrie fără anomalii; depozitul denormalizează deliberat ca să citească fără zece join-uri. Ce rămâne neatins e principiul lui Codd: modelul logic separat de cel fizic. De aceea poți schimba indecși, partiții și formatul de stocare fără să rescrii interogările — și de aceea lecțiile despre indecși și memorie, de mai târziu, nu ating deloc SQL-ul.
“Viitorii utilizatori ai marilor bănci de date trebuie protejați de obligația de a ști cum sunt organizate datele în mașină (reprezentarea internă).”