Normalizacija baza podataka

U oblasti projektovanja relacionih baza podataka, normalizacija predstavlja sistematski metod za osiguravanje da je struktura baze podataka pogodna za upite opšteg tipa, i da ne ispoljava izvesne neželjene karakteristike - anomalije unošenja, ažuriranja i brisanja - koje bi mogle da dovedu do gubitka integriteta podataka.[1] E. F. Kod, izumitelj relacionog modela, je uveo koncept normalizacije kao i pojam koji je danas poznat kao prva normalna forma 1970. godine.[2] Kod je osim toga definisao drugu i treću normalnu formu 1971,[3] a zajedno sa Rejmondom F. Bojsom je 1974. definisao Bojs-Kodovu normalnu formu.[4] Više normalne forme su tokom narednih godina definisali drugi teoretičari. Najnovija je šesta normalna forma koju su uveli Kris Dejt, Hju Darven, i Nikos Lorencos 2002. godine.[5]

Neformalno, tabela relacione baze podataka (računarska reprezentacija relacije) je normalizovana ako je u trećoj normalnoj formi (3NF).[6] Kod većine 3NF tabela se ne javljaju anomalije unošenja, ažuriranja i brisanja, to jest, u većini slučajeva 3NF tabele su u skladu sa BKNF, 4NF, i 5NF (ali obično ne i 6NF).

Izvori

uredi
  1. ^ Codd, E.F. The Relational Model for Database Management: Version 2. Addison-Wesley (1990), pp. 271
  2. ^ Codd, E.F. (1970). „A Relational Model of Data for Large Shared Data Banks”. Communications of the ACM. 13 (6): 377—387. doi:10.1145/362384.362685. Arhivirano iz originala 12. 06. 2007. g. Pristupljeno 25. 09. 2009. 
  3. ^ Codd, E.F. "Further Normalization of the Data Base Relational Model." (Presented at Courant Computer Science Symposia Series 6, "Data Base Systems," New York City, May 24th-25th, 1971) IBM Research Report RJ909 (August 31st, 1971). Republished in Randall J. Rustin (ed.), Data Base Systems: Courant Computer Science Symposia Series 6. Prentice-Hall, 1972.
  4. ^ Codd, E. F. "Recent Investigations into Relational Data Base Systems." IBM Research Report RJ1385 (April 23rd, 1974). Republished in Proc. 1974 Congress (Stockholm, Sweden, 1974). New York, N.Y.: North-Holland (1974).
  5. ^ C.J. Date, Hugh Darwen, Nikos Lorentzos. Temporal Data and the Relational Model. Morgan Kaufmann (2002), pp. 176
  6. ^ C.J. Date. An Introduction to Database Systems. Addison-Wesley (1999), pp. 290