Które z mechanizmów są niezbędne dla Systemu Zarządzania Bazą Danych?
Pytanie z egzaminu CKE, styczeń 2022 (arkusz EE.09-SG-22.01).
Niezbędnym mechanizmem systemu zarządzania bazą danych jest wielodostępność danych. SZBD, taki jak MySQL czy MS SQL Server, obsługuje wielu użytkowników i aplikacje naraz: pozwala im jednocześnie czytać i zmieniać dane, a przy tym pilnuje, by zmiany jednej osoby nie zniszczyły pracy drugiej. Służą do tego blokady i transakcje. Do zapamiętania podstawowe zadania SZBD: przechowywanie danych, współbieżny dostęp, kontrola uprawnień, spójność i odtwarzanie po awarii. Dzięki temu ten sam sklep internetowy może obsługiwać wielu klientów jednocześnie. Transakcja grupuje kilka operacji tak, że wykonują się wszystkie albo żadna - np. przelew zmniejsza saldo jednego konta i zwiększa saldo drugiego. Własności transakcji opisuje skrót ACID: niepodzielność, spójność, izolacja i trwałość.
Błędne odpowiedzi to dodatki, które bywają wygodne, ale nie stanowią o istocie SZBD. System zarządzania wersjami służy głównie do śledzenia zmian w kodzie i plikach projektu, a baza danych działa bez niego. Pakiety statystyczne analizują dane już zapisane - to osobne narzędzia, nie podstawowy mechanizm bazy. Przystawka do rysowania diagramów encji pomaga projektować bazę, np. w programie graficznym, ale serwer bazy jej nie potrzebuje. Bez współbieżnego, kontrolowanego dostępu wielu użytkowników baza danych nie spełniałaby swojej roli, dlatego niezbędna jest wielodostępność danych. Pytanie dotyczy tego, bez czego SZBD przestałby być systemem zarządzania bazą, a nie tego, co jest przydatne. Statystyki, diagramy i historię wersji można dodać osobnymi programami albo pominąć, a baza dalej będzie działać. Bez obsługi wielu jednoczesnych użytkowników nie dałoby się jednak zbudować na niej żadnej aplikacji dla wielu osób.