Title: Rozdzial 13: Architektura systemu Oracle
1Rozdzial 13 Architektura systemu Oracle
2Warstwy instalacji Oraclea
Aplikacje
Narzedzia Oracla
SQL, PL/SQL
Server Oraclea
System Operacyjny
Dane
3Architektura systemu Oracle
procesy uslugowe (serwery)
Globalny Obszar Systemowy
instancja bazy danych
dane
4Instancja bazy danych
- instancja bazy danych - zbiór procesów (ang.
process, task, job, program) oraz obszar pamieci
wspóldzielonej zwanej Globalnym Obszarem
Systemowym (ang. System Global Area - SGA)
obslugujacy jedna baze danych
5Rodzaje organizacji instancji
- organizacja typu single-process
Aplikacja
serwer Oracle
6Rodzaje organizacji instancji (cd.)
- organizacja typu multiple-processes
procesy uslugowe (serwery)
Procesy drugoplanowe
7Struktura bazy danych Oraclea
procesy drugoplanowe (systemowe)
Pliki dziennika powtórzen
Pliki bazy danych
Pliki kontrolne
Pliki startowe
8Procesy uslugowe (serwery)
- procesy uslugowe - realizuja zadania
uzytkowników, wykonujac - analize skladniowa, optymalizacje i wykonanie
zlecen SQL, - odczyt niezbednych bloków z dysku do buforów,
- pielegnuja listy LRU i zmodyfikowanych bloków
proces uslugowy
bufor danych
SGA
lista LRU
lista zmodyfikowanych blokow
dane
9Sekretarz Bazy Danych
- zadania Sekretarza Bazy Danych (ang. Database
Writer-DBWR) - zapis zmodyfikowanych bloków z buforów na dysk,
bufor danych
SGA
lista LRU
t
lista zmodyfikowanych blokow
dane
10Sekretarz Dziennika Powtórzen
- Zadania Sekratarza Dziennika Powtórzen (ang. Log
Writer-LGWR) - zapis danych z bufora dziennika do pliku,
- zapis rekordu zakonczenia transakcji,
- realizacja punktu kontrolnego (ang. checkpoint).
SGA
bufor dziennika powtórzen
plik dziennika powtórzen
11Proces Punktu Kontrolnego
- Proces Punktu Kontrolnego (ang. Checkpointer -
CKPT) moze przejac zadanie realizacji punktu
kontrolnego, normalnie wykonywanego przez LGWR
bufor danych
SGA
plik kontrolny
12
plik dziennika powtórzen
12
dane
12
12Monitor Systemu
- Monitor Systemu (ang. System Monitor - SMON)
odpowiedzialny jest za porzadki, do jego
obawiazków nalezy - odtwarzanie systemu po awarii w czasie
uruchamiania instancji, - usuwanie niepotrzebnych segementów tymczasowych,
- aktualizowanie pliku kontrolnego bazy,
- scalanie wolnych rozszerzen (ang. extent) w
ramach segmentu
13Monitor Procesów
- Monitor Procesów (ang. Process Monitor - PMON)
zajmuje sie odtwarzaniem procesów uslugowych,
które ulegly awarii - odpowiedzialny jest za
- usuwanie nienormalnie zakonczonych polaczen,
- wycofywanie nie zatwierdzonych transakcji,
- czyszczenie buforów,
- zwalnianie zajetych zasobów (np. blokady,
zatrzaski itp. zalozonych przez zatwierdzone
procesy), - wykrywanie wewnetrznych zakleszczen pomiedzy
blokadami zakladanymi na dane bazy i automatyczne
wycofywanie transakcji
14Archiwizator
- Archiwizator (ang. Archiver-ARCH) dokonuje
archiwizacji online plików dziennika powtórzen
bufor dziennika powtórzen
plik dziennika powtórzen
zarchiwizowany dziennik powtórzen
15Organizacja pamieci operacyjnej
- przeznaczenie - przechowywanie
- kodu wykonywanych programów, procesów,
- informacji o biezacych sesjach uzytkowników,
- danych niezbednych do wykonania programu (np.
stan wykonywanego zapytania), - informacji wspóldzielonych przez rózne procesy
(np. blokady), - buforowanych danych.
16Organizacja pamieci operacyjnej (cd.)
- obszar kodu oprogramowania,
- Globalny Obszar Systemowy (SGA)
- bufor danych (ang. Database Buffer Cache),
- bufor dziennika (ang. Redo Log Buffer),
- wspóldzielony zbiornik (ang. Shared Pool),
- Globalny Obszar Programu (ang. Program Global
Area), - obszar sortowania (ang. Sort Area)
17Organizacja pamieci operacyjnej (cd.)
obszar kodu oprogramowania
aplikacja
serwer
obszar kodu oprogramowania
SGA
bufor danych
bufor dziennika powtórzen
wspóldzielony zbiornik
procesy systemowe
obszar kodu oprogramowania
18Organizacja pamieci operacyjnej (cd.)
- obszar kodu oprogramowania - fragment pamieci
operacyjnej do przechowywania i wykonywania
programów jest tylko do odczytu na pewnych
platformach moze byc wspóldzielony miedzy rózne
procesy, - SGA - wspóldzielony obszar pamieci operacyjnej
zawierajacy dane i informacje sterujace dla
jednej instancji - bufor danych - fragment SGA sluzacy do
buforowania danych uzytkowych, zarzadzany
algorytmem LRU, wielkosc okreslana przez
DB_BLOCK_BUFFERS Blk, - bufor dziennika powtórzen - obszar SGA o
organizacji petli sluzacy do buforowania zapisu
do dziennika powtórzen, wielkosc okreslana przez
LOG_BUFFER B (domyslnie 4DB_BLOCK_SIZE),
19Organizacja pamieci operacyjnej (cd.)
- wspóldzielony zbiornik, wielkosc okreslana przez
SHARED_POOL_SIZE, sklada sie z - wspóldzielonego obszaru zlecen SQL - zawiera
elementy identycznych zlecen SQL (drzewo analizy
skladniowej, plan wykonania itp.)
PGA
PGA
prywatny obszar zlecen SQL
prywatny obszar zlecen SQL
wspóldzielony obszar zlecen SQL
wspóldzielony zbiornik
20Organizacja pamieci operacyjnej (cd.)
- bufor slownika bazy danych (ang. Data Dictionary
Cache), - Globalny Obszar Programu - fragment pamieci
zawierajacy dane i informacje sterujace
pojedynczym procesem, obejmuje - stos - zmienne, tablice sesji itp.,
- informacje o sesji uzytkownika,
- prywatny obszar zlecen SQL - zmienne i parametry
zlecen SQL, - obszar sortowania - fragment pamieci niezbedny do
sortowania danych, wielkosc okreslana przez
SORT_AREA_SIZE B
21Otwieranie bazy danych
OPEN
startup open
alter database open
MOUNT
startup mount
alter database mount
startup nomount
NOMOUNT
22Otwieranie bazy danych (cd.)
- tryb nomount - uzywany do tworzenia bazy danych,
plików kontrolnych itp., powoduje - uruchmienie instancji,
- otwarcie pliku z parametrami i plików sladowych,
- tryb mount - uzywany do reorganizacji bazy danych
(np. zmiany nazwy pliku) oraz odtwarzania po
awarii, powoduje - otwarcie plików kontrolnych i przylaczenie plików
z danymi oraz plików dziennika powtórzen, - tryb open - udostepnia baze danych uzytkownikom
do normalnej pracy, powoduje - otwarcie plików danymi oraz plików dziennika
powtórzen, - odtwarzanie po ewentualnej awarii,
23Zamykanie bazy danych
OPEN
alter database close
MOUNT
alter database dismount
NOMOUNT
shutdown
24Zamykanie bazy danych
- tryb normal - z oczekiwaniem na zakonczenie
wszystkich sesji uzytkowników,
SVRMGRgt shutdown normal
- tryb immediate - z wycofaniem wszystkich
aktywnych transakcji,
SVRMGRgt shutdown immediate
- tryb abort - z natychmiastowym zakonczeniem
wszystkich procesów instancji i zwolnieniem
pamieci SGA
SVRMGRgt shutdown abort