KWALIFIKACJA INF3 - TEST WIEDZY NR 2

PYTANIE NR 33.
Jesteś administratorem bazy danych i zauważyłeś, że niektóre dane są niekompletne lub niepoprawne. Która technika może pomóc w zapewnieniu spójności danych?
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Normalizacja bazy danych pomaga zapewniać spójność, bo redukuje redundancję i eliminuje anomalie wstawiania, aktualizacji i usuwania. Dzięki podziałowi na powiązane tabele te same informacje nie są wielokrotnie powielane, więc ryzyko rozbieżności po modyfikacjach jest mniejsze.
To technika projektowania struktury, a nie czyszczenia danych.

Pełne wyjaśnienie:

Poprawna jest odpowiedź "Normalizacja bazy danych", ponieważ to technika projektowania schematu relacyjnej bazy danych, której celem jest zapewnienie spójności poprzez eliminację nadmiarowości (redundancji) i ograniczenie typowych anomalii modyfikacji.

W praktyce normalizacja polega na uporządkowaniu atrybutów w tabelach i rozbiciu danych na logicznie powiązane relacje (np. osobno dane klienta, osobno zamówienia), łączone kluczami. Dzięki temu jedna informacja ma jedno "miejsce prawdy", co zmniejsza ryzyko, że po aktualizacji część rekordów zostanie pominięta i pojawi się niespójność.

Dlaczego pozostałe odpowiedzi są niepoprawne w kontekście spójności danych:

  • "Utworzenie indeksu dla bazy danych" – indeksy służą głównie przyspieszaniu wyszukiwania i sortowania. Nie rozwiązują problemu redundancji ani nie zapobiegają anomaliom aktualizacji; mogą co najwyżej wpływać na wydajność.
  • "Utworzenie kopii zapasowej bazy danych" – kopie zapasowe są kluczowe dla odtwarzania po awarii i bezpieczeństwa danych, ale nie zapewniają spójności logicznej rekordów w codziennej pracy (nie eliminują przyczyn niespójności w modelu danych).
  • "Zmiana typu danych w tabeli" – może poprawić dopasowanie formatu (np. liczba vs tekst), ale sama w sobie nie usuwa redundancji i nie porządkuje zależności między danymi. Spójność wymaga reguł modelu, a nie tylko typów.

Warto pamiętać o częstym nieporozumieniu: normalizacja nie jest "czyszczeniem" już błędnych wpisów. Pomaga natomiast projektować strukturę tak, aby w przyszłości ograniczać powstawanie niespójności. W realnych systemach spójność wzmacnia się dodatkowo mechanizmami integralności (np. klucze główne i obce, ograniczenia) oraz transakcjami, ale wśród podanych opcji to właśnie normalizacja najtrafniej odpowiada na pytanie.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Normalizacja to metoda projektowania relacyjnej bazy danych polegająca na takim podziale danych na tabele, aby ograniczyć redundancję i ryzyko niespójności. W efekcie każda informacja jest przechowywana możliwie w jednym miejscu, a tabele łączy się relacjami (np. kluczami obcymi).
Bo zmniejsza powielanie tych samych informacji w wielu rekordach. Gdy dane są zduplikowane, łatwo o sytuację, że aktualizujesz tylko część kopii i pojawia się rozbieżność. Normalizacja ogranicza takie przypadki, redukując anomalie aktualizacji, wstawiania i usuwania.
W skrócie: 1NF wymaga atomowych wartości i usuwa powtarzające się grupy; 2NF eliminuje zależności częściowe od klucza złożonego; 3NF usuwa zależności przechodnie między atrybutami. Kolejne kroki porządkują strukturę, by ograniczać niespójność.
Nie wprost. Normalizacja dotyczy głównie struktury i relacji między tabelami, czyli zapobiegania problemom w przyszłości. Istniejące błędy zwykle wymagają czyszczenia danych (data cleaning), walidacji oraz reguł integralności, które blokują niepoprawne wartości.
Najczęściej są to ograniczenia integralności (np. PRIMARY KEY, FOREIGN KEY, NOT NULL, CHECK), transakcje i właściwości ACID oraz czasem wyzwalacze. Normalizacja porządkuje model danych, a te mechanizmy egzekwują reguły poprawności podczas zapisu i modyfikacji.
Indeksy są przede wszystkim narzędziem wydajnościowym: przyspieszają wyszukiwanie i łączenie tabel. Zwykle nie rozwiązują problemu niespójności wynikającej z redundancji. Spójność zapewnia się przez dobry model (normalizacja) i reguły integralności, a indeksy dobiera pod obciążenie.
Denormalizację stosuje się czasem celowo dla wydajności (np. mniej złączeń w raportach). Ma to jednak koszt: rośnie redundancja, a więc i ryzyko niespójności przy aktualizacjach. Wymaga wtedy większej dyscypliny i dodatkowych mechanizmów kontroli danych.
Typowy sygnał to powtarzanie tych samych danych w wielu wierszach (np. adres klienta przy każdym zamówieniu). Jeśli zmiana jednego faktu wymaga edycji wielu rekordów, łatwo o pominięcie części z nich. To mechanizm prowadzący do rozjechania się danych.
Częsty błąd to oczekiwanie, że normalizacja "usunie" złe wpisy albo uzupełni braki. Normalizacja nie sprawdza poprawności wartości, tylko organizuje tabele i zależności. Walidacja to reguły danych (np. CHECK, NOT NULL, logika aplikacji) oraz procesy czyszczenia.
Wyszukaj w pytaniu słowa-klucze: "spójność", "redundancja", "anomalia", "projektowanie struktury". To wskazuje na normalizację lub integralność. Odrzucaj odpowiedzi typowo administracyjne (backup) i wydajnościowe (indeks), jeśli nie dotyczą bezpośrednio spójności logicznej danych.
info

Statystycznie 46% uczniów zna prawidłową odpowiedź. trudne

W praktyce zawodowej kluczowe jest to, że normalizacja bazy danych pomaga zapewniać spójność, bo redukuje redundancję i eliminuje anomalie wstawiania, aktualizacji i usuwania.

Źródła:

  • Silberschatz, Korth, Sudarshan, "Database System Concepts" (rozdziały o normalizacji i zależnościach funkcyjnych), wydanie podręcznikowe – źródło ogólnej teorii baz danych
  • Elmasri, Navathe, "Fundamentals of Database Systems" (część o normalizacji: 1NF/2NF/3NF/BCNF), wydanie podręcznikowe – omówienie anomalii i redundancji
  • Microsoft Learn: "Database normalization basics" (artykuł/dokumentacja), https://learn.microsoft.com/ - accessed 2026-02-27

Materiały:

  • Dokumentacja DBMS (np. sekcje o projektowaniu schematu i integralności danych)
  • Podręczniki do baz danych omawiające postacie normalne (1NF, 2NF, 3NF, BCNF)
  • Ćwiczenia projektowe: rozbijanie tabel z redundancją na powiązane relacje

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego