Poprawne składowanie danych – normalizacja

Czym jest normalizacja baz danych, czy to proces konieczny? Może coś zbędnego, nie wymagającego zachodu? Postaram się objaśnić i przedstawić kluczowe znaczenie owego pojęcia, z którym spotka się każda osoba interesująca, pracująca z bazami danych. Zacznijmy od książkowego pojęcia, bez którego się nie obejdzie:

[DEFINICJA] A wiec normalizacja baz danych to konieczny proces organizowania danych w bazie danych. To własnie wtedy tworzone są tabele i tworzone relacje między nimi, zgodnie z regułami przyjętymi i ujętymi w ogólnie przyjętych postaciach normalnych. By mówić o bazie, jest znormalizowana, musi spełniać wymogi pierwszych trzech form normalnych.
Zwykle czytając taką książkową regułę, mimo iż staramy się zrozumieć jak najwięcej, to czasem nie wychodzi nam to owocnie. Dlatego postaram się objaśnić zamysł powyższej regułki.
W przypadku, gdy mamy do czynienia z nadmiarowością, nadmiarowe dane zajmują znaczną część dysku. Co za tym idzie przyczyniają się do problemów związanych z konserwacją naszej bazy. Gdy jesteśmy zmuszeni zmienić dane w istniejącym więcej niż jednym miejscu, pojawia się problem. Bo musimy zmienić ów dane we wszystkich lokalizacjach w dokładnie taki sam sposób! Dlatego proces ten jest o wiele łatwiejszy, gdy konkretne dane przechowujemy w jednej tabeli, nieprawdaż?

Jakie więc są cele normalizacji baz danych?
-Przede wszystkim unikanie powtórzeń. Pole o identycznych wartościach w różnych tabelach to zmora każdego użytkownika. Należy unikać tego za wszelką cenę. Nawet początkowy użytkownik powinien zdawać sobie sprawę, że należy postępować w ów sposób, dobre nawyki to podstawa!
-Usuwanie relacji wieloznacznych.
-Unikamy anomalii związanych z aktualizacją, usuwaniem wstawianiem, modyfikacją itd.
-Unikamy niespójnych treści.

Istnieją pewne reguły normalizacji baz danych, tak zwane „postacie normalne”.
Pierwsza postać normalna (1NF)
-Wyeliminowanie powtarzających wartości w różnych tabelach!
– Osobne tabele dla danych powiązanych ze sobą.
– Tworzenie kluczy podstawowych.

Druga postać normalna (2NF)
-Tworzenie osobnych tabel dla zestawów wartości dotyczących wielu rekordów.
-Powiązanie tych tabel za pomocą klucza obcego!

Trzecia postać normalna (3NF)
-Usuń pola, które nie zależą od klucza!

Istnieją również inne postacie normalne( dokładniej rzecz ujmując jest to 4(BCNF – Boyce Codd Normal form) i 5 postać normalna), ale powyższe trzy są najbardziej popularne i najczęściej stosowane. Zignorowanie dalszych postaci normalnych może skutkować projektem niedoskonałym, lecz nie odniesie się to w większym stopniu na jego działanie. Aby dokładnie wiedzieć, z czym się je proces normalizacji baz danych, należy wykonać kilka przykładów, są one banalnie proste. Wtedy odczujemy na własnym przykładzie jak przydatnym i ważnym procesem jest normalizacja.

Podsumowując by mówić o postaci normalnej bazy danych, w naszej bazie przede wszystkim nie powinna występować redundancja, czyli powtarzanie się tym samych informacji. A doprowadzanie relacji do postaci normalnej nazywamy normalizacją baz danych.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *