240 likes | 406 Views
Rozdział 13: Architektura systemu Oracle. Warstwy instalacji Oracle’a. Aplikacje. Narzędzia Oracla. SQL, PL/SQL. Server Oracle’a. System Operacyjny. Dane. SQL. SQL. SQL. procesy systemowe. Architektura systemu Oracle. procesy usługowe (serwery). Globalny Obszar Systemowy.
E N D
Rozdział 13: Architektura systemu Oracle (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Warstwy instalacji Oracle’a Aplikacje Narzędzia Oracla SQL, PL/SQL Server Oracle’a System Operacyjny Dane (c) 2000, Instytut Informatyki Politechniki Poznańskiej
SQL SQL SQL procesy systemowe Architektura systemu Oracle procesy usługowe (serwery) Globalny Obszar Systemowy instancja bazy danych dane (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Globalny Obszar Systemowy procesy systemowe Instancja bazy danych • instancja bazy danych - zbiór procesów (ang. process, task, job, program) oraz obszar pamięci współdzielonej zwanej Globalnym Obszarem Systemowym (ang. SystemGlobal Area - SGA) obsługujący jedną bazę danych (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Globalny Obszar Systemowy Rodzaje organizacji instancji • organizacja typu single-process Aplikacja serwer Oracle (c) 2000, Instytut Informatyki Politechniki Poznańskiej
SQL SQL SQL Globalny Obszar Systemowy DBWR LGWR SMON PMON CKPT ARCH Rodzaje organizacji instancji (cd.) • organizacja typu multiple-processes procesy usługowe (serwery) Procesy drugoplanowe (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Obszar Globalny Systemu Struktura bazy danych Oracle’a procesy drugoplanowe (systemowe) Pliki dziennika powtórzeń Pliki bazy danych Pliki kontrolne Pliki startowe (c) 2000, Instytut Informatyki Politechniki Poznańskiej
SQL Procesy usługowe (serwery) • procesy usługowe - realizują żądania użytkowników, wykonując: • analizę składniową, optymalizację i wykonanie zleceń SQL, • odczyt niezbędnych bloków z dysku do buforów, • pielęgnują listy: LRU i zmodyfikowanych bloków proces usługowy bufor danych SGA lista LRU lista zmodyfikowanych blokow dane (c) 2000, Instytut Informatyki Politechniki Poznańskiej
DBWR Sekretarz 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 (c) 2000, Instytut Informatyki Politechniki Poznańskiej
LGWR Sekretarz Dziennika Powtórzeń • Zadania Sekratarza Dziennika Powtórzeń (ang. Log Writer-LGWR) • zapis danych z bufora dziennika do pliku, • zapis rekordu zakończenia transakcji, • realizacja punktu kontrolnego (ang. checkpoint). SGA bufor dziennika powtórzeń plik dziennika powtórzeń (c) 2000, Instytut Informatyki Politechniki Poznańskiej
CKPT DBWR Proces Punktu Kontrolnego • Proces Punktu Kontrolnego (ang. Checkpointer - CKPT) może przejąć zadanie realizacji punktu kontrolnego, normalnie wykonywanego przez LGWR bufor danych SGA plik kontrolny 12 plik dziennika powtórzeń 12 12 dane (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Monitor Systemu • Monitor Systemu (ang. System Monitor - SMON) odpowiedzialny jest za „porządki”, do jego obawiązków należy: • odtwarzanie systemu po awarii w czasie uruchamiania instancji, • usuwanie niepotrzebnych segementów tymczasowych, • aktualizowanie pliku kontrolnego bazy, • scalanie wolnych rozszerzeń (ang. extent) w ramach segmentu (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Monitor Procesów • Monitor Procesów (ang. Process Monitor - PMON) zajmuje się odtwarzaniem procesów usługowych, które uległy awarii; odpowiedzialny jest za: • usuwanie nienormalnie zakończonych połączeń, • wycofywanie nie zatwierdzonych transakcji, • czyszczenie buforów, • zwalnianie zajętych zasobów (np.: blokady, zatrzaski itp. założonych przez zatwierdzone procesy), • wykrywanie wewnętrznych zakleszczeń pomiędzy blokadami zakładanymi na dane bazy i automatyczne wycofywanie transakcji (c) 2000, Instytut Informatyki Politechniki Poznańskiej
LGWR ARCH Archiwizator • Archiwizator (ang. Archiver-ARCH) dokonuje archiwizacji online plików dziennika powtórzeń bufor dziennika powtórzeń plik dziennika powtórzeń zarchiwizowany dziennik powtórzeń (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Organizacja pamięci operacyjnej • przeznaczenie - przechowywanie: • kodu wykonywanych programów, procesów, • informacji o bieżących sesjach użytkowników, • danych niezbędnych do wykonania programu (np.: stan wykonywanego zapytania), • informacji współdzielonych przez różne procesy (np.: blokady), • buforowanych danych. (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Organizacja pamięci operacyjnej (cd.) • obszar kodu oprogramowania, • Globalny Obszar Systemowy (SGA): • bufor danych (ang. Database Buffer Cache), • bufor dziennika (ang. Redo Log Buffer), • współdzielony zbiornik (ang. Shared Pool), • Globalny Obszar Programu (ang. Program Global Area), • obszar sortowania (ang. Sort Area) (c) 2000, Instytut Informatyki Politechniki Poznańskiej
PGA SA PGA Organizacja pamięci operacyjnej (cd.) obszar kodu oprogramowania aplikacja obszar kodu oprogramowania serwer SGA bufor danych bufor dziennika powtórzeń współdzielony zbiornik obszar kodu oprogramowania procesy systemowe (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Organizacja pamięci operacyjnej (cd.) • obszar kodu oprogramowania - fragment pamięci operacyjnej do przechowywania i wykonywania programów; jest tylko do odczytu; na pewnych platformach może być współdzielony między różne procesy, • SGA - współdzielony obszar pamięci operacyjnej zawierający dane i informacje sterujące dla jednej instancji: • bufor danych - fragment SGA służący do buforowania danych użytkowych, zarządzany algorytmem LRU, wielkość określana przez DB_BLOCK_BUFFERS [Blk], • bufor dziennika powtórzeń - obszar SGA o organizacji pętli służący do buforowania zapisu do dziennika powtórzeń, wielkość określana przez LOG_BUFFER [B] (domyślnie: 4*DB_BLOCK_SIZE), (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Organizacja pamięci operacyjnej (cd.) • współdzielony zbiornik, wielkość określana przez SHARED_POOL_SIZE, składa się z: • współdzielonego obszaru zleceń SQL - zawiera elementy identycznych zleceń SQL (drzewo analizy składniowej, plan wykonania itp.) PGA PGA prywatny obszar zleceń SQL prywatny obszar zleceń SQL współdzielony obszar zleceń SQL współdzielony zbiornik (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Organizacja pamięci operacyjnej (cd.) • bufor słownika bazy danych (ang. Data Dictionary Cache), • Globalny Obszar Programu - fragment pamięci zawierający dane i informacje sterujące pojedynczym procesem, obejmuje: • stos - zmienne, tablice sesji itp., • informacje o sesji użytkownika, • prywatny obszar zleceń SQL - zmienne i parametry zleceń SQL, • obszar sortowania - fragment pamięci niezbędny do sortowania danych, wielkość określana przez SORT_AREA_SIZE [B] (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Otwieranie bazy danych OPEN startup [open] alter database open MOUNT startup mount alter database mount startup nomount NOMOUNT (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Otwieranie bazy danych (cd.) • tryb nomount - używany do tworzenia bazy danych, plików kontrolnych itp., powoduje: • uruchmienie instancji, • otwarcie pliku z parametrami i plików śladowych, • tryb mount - używany do reorganizacji bazy danych (np.: zmiany nazwy pliku) oraz odtwarzania po awarii, powoduje: • otwarcie plików kontrolnych i przyłączenie plików z danymi oraz plików dziennika powtórzeń, • tryb open - udostępnia bazę danych użytkownikom do normalnej pracy, powoduje: • otwarcie plików danymi oraz plików dziennika powtórzeń, • odtwarzanie po ewentualnej awarii, (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Zamykanie bazy danych OPEN alter database close MOUNT alter database dismount NOMOUNT shutdown (c) 2000, Instytut Informatyki Politechniki Poznańskiej
Zamykanie bazy danych • tryb normal - z oczekiwaniem na zakończenie wszystkich sesji użytkowników, SVRMGR> shutdown [normal] • tryb immediate - z wycofaniem wszystkich aktywnych transakcji, SVRMGR> shutdown immediate • tryb abort - z natychmiastowym zakończeniem wszystkich procesów instancji i zwolnieniem pamięci SGA SVRMGR> shutdown abort (c) 2000, Instytut Informatyki Politechniki Poznańskiej