Systemy baz danych obejmują złożone struktury danych. Aby uczynić system efektywnym pod względem wyszukiwania danych i zmniejszyć złożoność pod względem użyteczności użytkowników, programiści stosują abstrakcję, tj. ukrywają przed użytkownikami nieistotne szczegóły. Takie podejście upraszcza projektowanie baz danych.
Poziom abstrakcji w systemie DBMS
Istnieją głównie 3 poziomy abstrakcji danych:
- Poziom fizyczny lub wewnętrzny
- Poziom logiczny lub koncepcyjny
- Widok lub poziom zewnętrzny
Poziom fizyczny lub wewnętrzny
Jest to najniższy poziom abstrakcji danych. Mówi nam, w jaki sposób dane są faktycznie przechowywane w pamięci. W tym celu stosowane są metody dostępu, takie jak dostęp sekwencyjny lub losowy, oraz metody organizacji plików, takie jak drzewa B+ i haszowanie. Użyteczna wielkość pamięci i liczba rekordów to czynniki, które musimy znać podczas projektowania bazy danych.
Załóżmy, że musimy przechowywać dane pracownika. Bloki pamięci i ilość pamięci wykorzystywanej do tych celów są ukrywane przed użytkownikiem.
Poziom logiczny lub koncepcyjny
Poziom ten obejmuje informacje faktycznie przechowywane w bazie danych w formie tabel. Przechowuje także relacje między jednostkami danych w stosunkowo prostych strukturach. Na tym poziomie informacje dostępne dla użytkownika na poziomie widoku są nieznane.
Możemy przechowywać różne atrybuty pracownika i relacji, np.: z menedżerem mogą być również przechowywane.
Poziom logiczny opisuje zatem całą bazę danych za pomocą niewielkiej liczby stosunkowo prostych struktur. Chociaż implementacja prostych struktur na poziomie logicznym może obejmować złożone struktury na poziomie fizycznym, użytkownik poziomu logicznego nie musi być świadomy tej złożoności. Nazywa się to fizyczną niezależnością danych. Administratorzy baz danych, którzy muszą decydować, jakie informacje mają być przechowywane w bazie danych, stosują logiczny poziom abstrakcji.
Widok lub poziom zewnętrzny
To najwyższy poziom abstrakcji. Użytkownicy przeglądają tylko część aktualnej bazy danych. Poziom ten ma na celu ułatwienie dostępu do bazy danych indywidualnemu użytkownikowi. Użytkownicy przeglądają dane w formie wierszy i kolumn. Tabele i relacje służą do przechowywania danych. Może istnieć wiele widoków tej samej bazy danych. Użytkownicy mogą po prostu przeglądać dane i wchodzić w interakcję z bazą danych, a szczegóły implementacji są przed nimi ukryte. Mimo że poziom logiczny wykorzystuje prostsze struktury, złożoność pozostaje ze względu na różnorodność informacji przechowywanych w dużej bazie danych. Wielu użytkowników systemu baz danych nie potrzebuje wszystkich tych informacji; zamiast tego muszą uzyskać dostęp tylko do części bazy danych. Poziom abstrakcji widoku istnieje, aby uprościć ich interakcję z systemem
Przykład: W przypadku przechowywania danych klientów
pytania do rozmowy kwalifikacyjnej w języku Java
- Poziom fizyczny - będzie zawierał blok pamięci (bytesGBTBetc)
- Poziom logiczny - będzie zawierać pola i atrybuty danych.
- Zobacz poziom - z tym współpracuje interfejs wiersza polecenia Lub graficzny interfejs użytkownika dostęp do bazy danych
Głównym celem abstrakcji danych jest osiągnięcie niezależności danych, aby zaoszczędzić czas i koszty wymagane w przypadku modyfikacji lub zmiany bazy danych.
Niezależność danych
Niezależność danych jest definiowany głównie jako właściwość systemu DBMS, która pomaga zmienić schemat bazy danych na jednym poziomie systemu bez konieczności zmiany schematu na następnym poziomie. pomaga to oddzielić dane od wszystkich programów, które z nich korzystają.
Mamy mianowicie dwa poziomy niezależności danych wynikające z tych poziomów abstrakcji:
- Fiz I niezależność danych na poziomie kal
- Niezależność danych na poziomie logicznym
Niezależność danych na poziomie fizycznym
Odnosi się do cechy polegającej na możliwości modyfikowania schematu fizycznego bez żadnych zmian w schemacie koncepcyjnym lub logicznym dokonanych w celach optymalizacyjnych, np. Struktura koncepcyjna baza danych nie będzie miała wpływu żadna zmiana wielkości pamięci serwera systemu baz danych. Jednym z takich przykładów jest zmiana z plików o dostępie sekwencyjnym na pliki o dostępie swobodnym. Te zmiany lub modyfikacje struktury fizycznej mogą obejmować:
- Korzystanie z nowych urządzeń pamięci masowej.
- Modyfikowanie struktur danych używanych do przechowywania.
- Zmiana indeksów lub użycie alternatywnych technik organizacji plików itp.
Niezależność danych na poziomie logicznym
Odnosi się do właściwości polegającej na możliwości modyfikowania schematu logicznego bez wpływu na schemat zewnętrzny lub program użytkowy. Żadne zmiany w koncepcyjnym widoku danych nie będą miały wpływu na widok danych przez użytkownika. Zmiany te mogą obejmować wstawienie lub usunięcie atrybutów zmieniających jednostki struktury tabeli lub relacje ze schematem logicznym itp.