Architektura databáze Oracle

Slides:



Advertisements
Podobné prezentace
PEVNÝ DISK POČÍTAČE.
Advertisements

Zpracování SQL Lubomír Andrle 5. přednáška
Základy databázových systémů
Přednáška č. 1 Úvod, Historie zpracování dat, Základní pojmy
Přednáška č. 3 Normalizace dat, Datová a funkční analýza
 Informací se data a vztahy mezi nimi stávají vhodnou interpretací pro uživatele, která odhaluje uspořádání, vztahy, tendence a trendy  Existuje celá.
SOFTWARE dálkové studium PODNIKÁNÍ 2. listopad 2006.
Přednáška č. 5 Proces návrhu databáze
Souborové systémy.
Architektury a techniky DS Tvorba efektivních příkazů I Přednáška č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Úvod do databází Databáze.
Diskový oddíl Souborový systém RAID 9/2012.
Přístupová práva, maska přístupových práv Jiří Hořejší.
Databázové systémy Mgr. Lenka Švancarová. Úvod Doposud jsme uvažovali jen o modelu databázového systému, kde jsou veškerá data a systém řízení báze dat.
Školení správců II. Petr Pinkas RNDr. Vít Ochozka.
Relační databáze.
Tomáš Urych, ESO9 Intranet a.s.
Vypracoval: Ondřej Dvorský Třída: VIII.A
Databázové systémy. Práce s daty Ukládání dat Aktualizace dat Vyhledávání dat Třídění dat Výpočty a agregace.
Databázové systémy Architektury DBS.
Celní služby 2000 Radek Sedláček TranSoft a.s Radek Sedláček TranSoft a.s
Databázové systémy I Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Architektury a techniky DS Cvičení č. 9 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Databázové systémy II Přednáška č. 9. Transakce je logická jednotka práce sestávající z jednoho nebo více SQL příkazů, které jsou atomické z hlediska.
Transakční zpracování v SQL P. Částek. Transakce Transakce = logická jednotka práce Podaří-li se všechny části transakce, potvrdíme je. COMMIT Jestliže.
Databázové systémy II Cvičení č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
DATABÁZOVÉ SYSTÉMY. 2 DATABÁZOVÝ SYSTÉM SYSTÉM ŘÍZENÍ BÁZE DAT (SŘBD) PROGRAM KTERÝ ORGANIZUJE A UDRŽUJE NASHROMÁŽDĚNÉ INFORMACE DATABÁZOVÁ APLIKACE PROGRAM.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Databázové modelování
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B13 Autor Ing. Jiří Kalousek Období vytvoření březen.
Databázové systémy 2 Cvičení č. 5 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy Přednáška č. 5 Datové typy a Fyzická organizace dat.
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
Administrace Oracle Paralelní zpracování.
Adresářová struktura Střední odborná škola Otrokovice
Pavel Olšan & Ondřej Mrzena.  Co je server  Funkce  Verze Windows a instalace  Active Directory  Účty  DNS  DHCP  .
Databázové systémy I Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2015.
Databázové systémy Úvod, Základní pojmy. Úvod S rozvojem lidského poznání roste prudce množství informací. Jsou kladeny vysoké požadavky na ukládání,
Diskový oddíl. Diskové oddíly (partition) slouží k rozdělení fyzického disku na logické oddíly, se kterými je možné nezávisle manipulovat jeden disk se.
Úvod do databází zkrácená verze.
Uvedení autoři, není-li uvedeno jinak, jsou autory tohoto výukového materiálu a všech jeho částí. Tento projekt je spolufinancován ESF a státním rozpočtem.
YOUR LOGO C# Entity Framework. YOUR LOGO  Entity framework nám poskytuje: -Vytváří objektový model na základě databázového schématu -Mapuje tabulky,
Uvedení autoři, není-li uvedeno jinak, jsou autory tohoto výukového materiálu a všech jeho částí. Tento projekt je spolufinancován ESF a státním rozpočtem.
Uvedení autoři, není-li uvedeno jinak, jsou autory tohoto výukového materiálu a všech jeho částí. Tento projekt je spolufinancován ESF a státním rozpočtem.
Základní škola T. G. Masaryka a Mateřská škola Poříčany, okr. Kolín VY_32_INOVACE_ICT_04 ORGANIZACE DAT V PC Zpracovala: Mgr. Květoslava Štikovcová Číslo.
Software,hardware,data,biti a bajty.  Software je v informatice sada všech počítačových programů používaných v počítači, které provádějí nějakou činnost.
Architektury a technika databázových systémů Jiří Zechmeister 1., 2. přednáška
Stránkování MATĚJ JURIČIČ 2015/2016 EP1 SPŠ A VOŠ JANA PALACHA KLADNO.
Paměti PC HDD, CD/DVD, USB Flash RAM a ROM Vnější paměť Disková paměť
NÁZEV ŠKOLY:SOŠ Net Office, spol. s r.o. Orlová Lutyně
Bezpečnostní technologie I
OPERAČNÍ SYSTÉMY Část 4 – správa souborů
SW počítače - operační systém
Databázové systémy přednáška 8 – Transakce
Systémové oblasti disku
Vlastnosti souborů Jaroslava Černá.
Soubor Soubor v informatice označuje pojmenovanou sadu dat uloženou na nějakém datovém médiu, se kterou lze pracovat nástroji operačního systému jako.
1. ročník oboru Mechanik opravář motorových vozidel
Databázové systémy I Přednáška 11 Databázové systémy 1 – KIT/IDAS1
Souborové systémy 2 Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Správa paměti.
Segmentace Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Správa disků
Práce s procesy Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí Autor:
chkdsk , systeminfo, subst, shutdown
Systém souborů 1.
Souborové systémy 1 Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Transkript prezentace:

Architektura databáze Oracle Lubomír Andrle lubomir.andrle@unicorn.eu 2. přednáška 7.10.2013

Obsah Fyzická architektura Objekty schématu Logická architektura Paměťová architektura Datový slovník Procesní architektura

Fyzická architektura

Co je to databáze Kolekce dat na disku uložená v jednom nebo více datových souborech Jsou zde uložena veškerá data databáze Fyzicky se skládá z DataFiles ControlFiles Redo Log Files Archive Log Files Alert and Trace Files Backup Files

Co je to instance databáze Skládá se z bloku přidělené paměti, který je vyhrazený v System Global Area (SGA) z procesů, které běží na pozadí a komunikují s SGA a databázovými soubory na disku

Data File Veškerá data databáze uložena v Data Files Uložena data logických databázových struktur

Control File Obsahuje metadata – data o fyzické struktuře databáze Například Název databáze Jména a místo uložení datafiles a redo logů Čas vytvoření databáze … Při změnách struktury je ihned aktualizován

Redo Log File Při každém přidání, odstranění nebo změně dat v tabulce, indexu nebo jiném objektu databáze Oracle je zapsán záznam do aktuálního souboru protokolu Každá databáze Oracle musí mít alespoň dva soubory protokolu Když je jeden Redo Log zaplněn záznamy, je tento soubor označen jako ACTlVE v případě, kdy je potřebný pro případnou obnovu instance INACTlVE, pokud není potřebný pro obnovu instance Záznamy se pak začnou zapisovat do dalšího souboru protokolu ze seznamu od začátku souboru a tento soubor je označen jako CURRENT.

Alert and Trace Log Kompletní audit nad veškerými operacemi Pokud dojde ke vzniku chyby při běhu databáze, Oracle obvykle zapisuje chybové zprávy do alert logu nebo v případě procesů běžících na pozadí do trace logu Jsou zde zaznamenány i všechny příkazy alter database i alter system, které provedl správce databáze.

Archive Log Při ARCHIVELOG režimu lze všechny zápisy do Redo Logs automaticky archivovat

Logická architektura

Logická struktura Definuje logické úložné struktury Datové bloky (Data blocks) Rozsahy (Extents) Segmenty (Segements) Toto logické rozdělení úložného prostoru umožňuje účinnější kontrolu nad využitím diskového místa

Logické úložné struktury Tabulkový prostor tablespace Vztah Datový blok (Data block) Rozsah (Extent) Segment

Datový blok Nejmenší úložnou jednotkou databáze Oracle Velikost bloku číslo udávající počet bajtů, které blok zabírá v daném tabulkovém prostoru Často definována jako násobek velikosti bloku, definované operačním systémem

Struktura datového bloku Hlavička (Header) Základní informace Adresa bloku, typ segmentu Tabulkový rejstřík (Table directory) Informace tabulce řádků Řádkový rejstřík (Row directory) Informace o počtu řádků Adresy řádků Všechny tyto informace tvoří tzv. Overhead

Řízení volného místa PCTFREE Určuje minimální velikost (%) datového bloku, který musí být rezervován na data

Řízení volného místa PCTUSED Určuje minimální velikost (%) datového bloku, který muže být použit pro row data a overhead

Extents (Rozsahy) Vyšší úrovní logického seskupování elementů v rámci databáze Sestává z jednoho nebo několika datových bloků V případě, kdy místo v segmentu dojde, Oracle alokuje nový extent

Segment Skládá se z množiny rozsahů V databázi Oracle rozlišujeme čtyři typy segmentů: Datové segmenty (Data segments) Indexové segmenty (Index segments) Dočasné segmenty (Temporary segments) Návratové segmenty (Undo segments)

Data segment Data segment v Oracle udržuje všechna data pro: Databázovou tabulku Partition v partitiované tabulce Cluster v clusterované tabulce Oracle vytvoří data segment, vždy s novou tabulkou CREATE TABLE, apod.

Rollback segment Rollback segmenty V Oracle 10g existuje návratový segment pouze v tabulkovém prostoru SYSTEM Čistě systémový segment V předchozích verzích byl návratový segment využíván pro ukládání undo informací

Ostatní segmenty Index segment Temporary segment Každý index je uložen ve svém vlastním indexovém segmentu Temporary segment V případě, kdy provedení příkazu jazyka SQL vyžaduje pro své dokončení diskový prostor je alokován dočasný segment Existují pouze po dobu trvání příkazu jazyka SQL

Vztah logické a fyzické architektury

Objekty schématu

Základní přehled Tabulky Pohledy Materializované pohledy Sequence Generatory Synonyma Indexy Index-Organized Tabulky Clustery

Paměťová architektura

Paměťové struktury V paměti je spustitelný kód, informace o relacích, jednotlivé procesy databáze a informace sdílené mezi procesy Obsahují uživatelské příkazy jazyka SQL a také vyrovnávací paměť, jejíž obsah je dle potřeby ukládán na disk a která obsahuje datové bloky databázových segmentů a informace o dokončených databázových transakcích. Datová oblast vyhrazená pro instanci Oracle se nazývá globální systémová oblast SGA (System Global Area) Pro každý server a proces běžící na pozadí v paměti existuje oblast s názvem globální programová oblast PGA (Program Global Area).

Paměťové struktury

Globální systémová oblast SGA Skupina paměťových struktur instance Oracle sdílená uživateli databázové instance Při spuštění instance Oracle je pro oblast SGA vyhrazena paměť v závislosti na hodnotách nastavených v inicializačním souboru parametrů Parametr SGA_MAX_SIZE celková velikost všech oblastí SGA nesmí překročit hodnotu SGA_MAX_SIZE

Buffer cache Součást SGA Udržuje data načtená z datafiles Všechny uživatelské procesy jsou připojeny Nevýhoda konkurenčního přístupu

Shared pool Součást SGA Rozděleno na Vyrovnávací paměť knihoven (Library cache) Vyrovnávací paměť pro SQL (PL/SQL) Prováděcí plány Pozor na poddimenzovanou velikost Vyrovnávací paměť datového slovníku (Dictionary cache) Informace o tabulkách (struktury tabulek) ve schématu SYS, SYSTEM Obsahuje metadata databáze Velké čtení v době parsování SQL

Globální programová oblast SGA Oddíl paměti alokovaný pro privátní použití jedním procesem Konfigurace závisí na konfiguraci připojení databáze Oracle sdílený server (shared server) uživatelé sdílejí připojení k databázi, čímž se minimalizuje využití paměti na serveru informace o uživatelských relacích uloženy v oblasti SGA místo v oblasti PGA ideální pro velký počet současných připojení k databázi s malým množstvím krátce trvajících požadavků vyhrazený server (dedicated server) V prostředí s vyhrazeným serverem má každý uživatelský proces vlastní připojení k databázi a paměť vyhrazená pro relace je v oblasti PGA Obsahuje také oblast pro řazení se použije vždy, když uživatelský požadavek vyžaduje provést řazení, popř. Hash join

Procesní architektura

Procesy Oracle

Procesy Oracle Serverové procesy (Server processes) Background procesy Obsluha uživatelských požadavků Background procesy PMON SMON DBWn LGWR RECO ARCn

Procesy Oracle Oracle hell ;)

Proces SMON System monitor V případě pádu systému nebo selhání instance, proces SMON provede obnovu instance aplikováním záznamů z online souboru protokolu na datové soubory Zabezpečuje čištění dočasných segmentů ve všech tabulkových prostorech (tablespaces) Jednou z úloh procesu SMON je i pravidelné slučování volného místa v tabulkových prostorech u tabulkových prostorů řízených slovníkem

Proces PMON Process monitor Ukázka práce PMON při odpojení relace Pokud je uživatelské připojení přerušeno nebo uživatelský proces selže z jiného důvodu, provede proces PMON, potřebné úklidové práce Vyčistí vyrovnávací paměť a ostatní prostředky, které uživatelské připojení používalo Uživatelská relace například mohla provádět aktualizaci některých řádků v tabulce a tím tyto řádky uzamknout Ukázka práce PMON při odpojení relace Vrátí zpět změny provedené transakcemi, které probíhaly před výpadkem Označí ve vyrovnávací paměti bloky, použité transakcemi jako volné Odstraní uzamčení na odpovídajících řádcích tabulky Odstraní identifikátor odpojeného procesu ze seznamu aktivních procesů

Proces DBWn Databázový zapisovač Až 20 procesů DBW0 – DBW20 Zapisuje nové nebo změněné datové bloky (dirty blocks) z vyrovnávací paměti do datových souborů Až 20 procesů DBW0 – DBW20 Určován parametrem DB_ WRITER_PROCESSES

Proces LGWR Zapisovač protokolu řídí správu vyrovnávací paměti protokolu nejaktivnější proces v instanci s velkou aktivitou příkazů pro manipulaci s daty transakce není považována za dokončenou, dokud proces LGWR nezapíše úspěšně všechny záznamy, včetně záznamu o operaci commit, do souborů protokolu

Proces RECO Proces obnovy ošetřuje selhání distribuovaných transakcí

Proces ARCn Proces archivátor provádí kopírování souborů protokolu na ostatní nadefinovaná umístění vždy, když se soubor protokolu zaplní

Q&A