Co to jest denormalizacja w DBMS?
Co to jest denormalizacja w DBMS?
Gdy wykonujemy normalizację tabel, wtedy dzielimy tabele na mniejsze tabele. Ale jeśli chcemy uzyskać dane z więcej niż jednej tabeli, to musimy wykonać jakąś operację złączenia na tych tabelach. W blogu o normalizacji czytamy, że operacja złączenia prowadzi do zwiększenia czasu. Aby przezwyciężyć tę wadę normalizacji, wykonujemy denormalizację tabel.
Denormalizacja
Denormalizacja jest techniką optymalizacji bazy danych, w której dodajemy nadmiarowe dane w bazie danych, aby pozbyć się skomplikowanych operacji złączenia. Robi się to w celu zwiększenia szybkości dostępu do bazy danych. Denormalizacja jest wykonywana po normalizacji w celu poprawy wydajności bazy danych. Dane z jednej tabeli są zawarte w innej tabeli, aby zmniejszyć liczbę złączeń w zapytaniu, a tym samym pomaga w przyspieszeniu wydajności.
Zdenormalizowana baza danych nigdy nie powinna być mylona z bazą danych, która nigdy nie została znormalizowana.
Przykład: Załóżmy, że po normalizacji mamy dwie tabele pierwszą, tabelę Uczeń i drugą, tabelę Oddział. Student posiada atrybuty Roll_no, Student-name, Age, and Branch_id.
Tabela Oddział jest powiązana z tabelą Student za pomocą Branch_id jako klucza obcego w tabeli Student.
Jeśli chcemy uzyskać nazwy uczniów wraz z nazwą oddziału to musimy wykonać operację join. Problem w tym, że jeśli tabela jest duża to potrzebujemy dużo czasu na wykonanie operacji złączenia. Możemy więc dodać dane Branch_name z tabeli Branch do tabeli Student i w ten sposób zredukować czas, który zostałby wykorzystany na operację join, a tym samym zoptymalizować bazę danych.
Zalety denormalizacji
- Wykonywanie zapytań jest szybkie, ponieważ musimy dołączyć do mniejszej ilości tabel.
Wady denormalizacji
- Jako, że dane są nadmiarowe, operacje aktualizacji i wstawiania są droższe i zajmują więcej czasu. Ponieważ nie wykonujemy normalizacji, więc będzie to skutkować nadmiarowymi danymi.
- Integralność danych nie jest zachowana w denormalizacji. Ponieważ istnieje redundancja, więc dane mogą być niespójne.
To już wszystko na temat denormalizacji. Mam nadzieję, że nauczyłeś się dziś czegoś nowego.