Struktura logiczna bazy danych Oracle – przestrzeń tabel, architektura, zarządzanie i administracja bazami danych
W ramach administracji bazami systemu Oracle można wyróżnić dwie główny struktury. Chodzi o struktury fizyczne i logiczne bazy danych, które to pojęcia przewijają się często podczas nauki Oracle Database. Celem niniejszego artykułu jest przybliżenie, czym jest logiczna struktura bazy Oracle. Dowiesz się, w jaki sposób odróżnić ją od jej fizycznego odpowiednika, a także jaka jest relacja pomiędzy tymi strukturami. Na koniec poznasz najważniejsze zalety i wady logicznych struktur Oracle Database.
Struktura logiczna bazy danych Oracle – co to takiego?
Kiedy administrator baz danych (DBA) korzysta z oprogramowania Oracle, prędzej czy później spotka się z logicznymi strukturami baz. Pod pojęciem tym kryje się sposób alokacji logicznej przestrzeni dla wszystkich danych w ramach konkretnej bazy. Wśród najistotniejszych elementów tej architektury wyróżnić można bloki, ekstenty, segmenty i przestrzenie tabel. Z kolei na poziomie fizycznym, dane te przechowywane są w plikach na dysku.
Co zawiera logiczna struktura Oracle Database?
Baza Oracle podzielona jest logicznie na co najmniej dwie przestrzenie tabel. To one grupują odpowiednie obiekty bazodanowe, takie jak bloki, esktenty czy segmenty.
Połączony rozmiar plików z danymi dostępny jest w ramach pojemności konkretnego obszaru tabel. W każdym systemie Oracle znaleźć można przestrzenie tabel SYSTEM i SYSAUX. Oprogramowanie SQL tworzy te dwa filary automatycznie za każdym razem, gdy administrator powołuje do życia nową bazę.
Co pozwala przechowywać przestrzeń tabel i jak działa?
Warto pochylić się na chwilę nad samym pojęciem tablespaces, czyli przestrzeni tabel. To właśnie one odpowiedzialne są za logiczne usystematyzowanie danych, które realnie przechowywane są w plikach.
Sam termin nie jest do końca precyzyjny, ponieważ kryją się za nim nie tylko tabele. W tym obszarze znajdować się mogą także indeksy, widoki, sekwencje, jak również inne obiekty.
Należy podkreślić, że jedna przestrzeń przynależy wyłącznie do jednej bazy. Jednocześnie, zawiera przynajmniej jeden plik danych, który wykorzystuje się do gromadzenia informacji. Same pliki zaś przypisuje się do jednej tablespace, a co za tym idzie, do jednej bazy danych.
Hierarchia logicznych struktur baz w Oracle Database
Poszczególne obiekty w logicznej strukturze bazodanowej zostały tak zaprojektowany, by tworzyły spójną i uporządkowaną hierarchię. Mamy tutaj do czynienia z kilkoma elementami, jakie składają się na kompletną architekturę strukturalną. Mowa o następujących obiektach:
- Bloki danych (ang. data blocks). Jest to najmniejsza jednostka służąca do przechowywania informacji w ramach Oracle Database. Każdy z bloków odpowiada konkretnej liczbie bajtów zajmowanych na przestrzeni fizycznego dysku, przykładowo 2 KB. Są to również najmniejsze elementy, jakie baza może wykorzystywać lub alokować.
- Ekstenty (ang. extents). Jest to zestaw logicznie przylegających do siebie bloków danych, których przeznaczeniem jest przechowywanie określonego typu informacji. Jeśli jeden blok ma 2 KB, wówczas zakres 24 KB dotyczy 12 przylegających do siebie bloków.
- Segmenty (ang. segments). To z kolei zestaw uszeregowanych ekstentów, który powstaje z myślą o konkretnym obiekcie, np. tabeli. Funkcjonują one w przestrzeni tabel, a każda z nich może zawierać więcej segmentów.
Podsumowując, przestrzeń tabel zawiera segmenty(np. tabele, indeksy itp.), które zbudowane są z ekstentów, na jakie składają się bloki danych. W ten sposób cały system jest perfekcyjnie zhierarchizowany.
Jeżeli chcesz kompleksowo przeszkolić się za zakresu administracji Oracle Database, sprawdź mój kurs Oracle! Już ponad 400 studentów!
Struktura fizyczna bazy w relacyjnej bazie danych
Na temat fizycznej struktury bazy danych znajdziesz tutaj struktura fizyczna. Mimo tego, warto w kilku słowach podsumować, jak oba modele współdziałają ze sobą w relacyjnych bazach danych.
Struktura fizyczna bazy danych odzwierciedla rzeczywiste położenie i cechy plików danych. To na nią składają się wszystkie pliki, które przechowuje dysk twardy lub serwer Oracle. Jeśli logiczna część działalności Database jest dobrze zoptymalizowana, wówczas strona fizyczna nie powinna mieć problemów z przechowywaniem i dostępem do informacji.
Zalety logicznej struktury serwera bazy danych Oracle
Sprawdźmy, jakie są największe zalety omawianej przez nas logicznej architektury bazodanowej:
- Organizacja logiczna danych daje komfort programistom – nie muszą oni znać struktury fizycznej plików na serwerze DB.
- Ułatwia organizacje danych dla administratorów baz – zapewnia możliwość grupowania danych poprzez tablespace.
- Pozwala na pobieranie zawsze optymalnej ilości danych z dysków, dla każdego z zapytań SQL.
- Zapewnia wysoką wydajność baz danych Oracle.
- Dostarcza prosty interfejs dla DBA, do zarządzania obiektami w obrębie tablespace.
- Zapewnia bezpieczeństwo danych dzięki ich separacji.
Czy omawiana struktura ma jakieś wady?
Struktura logiczna baz danych Oracle w najnowszych jej odsłonach takich jak 12c czy 19c, jest już bardzo dopracowanym rozwiązaniem. W danych czasach(10g, 11g) korzystanie z takiego podejścia wymagało od administratora baz danych konfiguracji parametrów i dużej świadomości podczas utrzymywania struktury logicznej. Aktualnie Oracle zawiera parametry domyślne, które będą odpowiednie dla większości baz. Konfiguracja bazy danych pod kątem struktury logicznej obejmuje głownie odpowiednie przypisanie obiektów dla tablespace. Opcjonalnie należy dobrać wielkość bloku danych wspomnianego wcześniej w tym artykule. Jeżeli chcesz dowiedzieć się jak zarządzać strukturami zajrzyj do kompleksowego kursu administracji Oracle!