Prezentace pochází z webináře, který proběhl Téma

Preview:

Citation preview

Téma: Architektura databáze Oracle 12c

Tomáš Solař, Oracle ACE

Tomas Solar Consulting

Prezentace pochází z webináře, který proběhl 14.2.2014 online na stránkách www.Tomas-Solar.com

pro informace o dalších prezentacích navštivte webové stránky

Tomáš Solař ● pořádá různé webináře, workshopy, školení● vzdáleně spravuje databáze klientů● poskytuje konzultace na různorodých projektech

Webinář v rámci cyklu Oracle DBA

Tomáš Solař, Oracle ACETomas Solar Consulting

Téma: Architektura databáze Oracle 12c

Tomas Solar Consulting

Představení - Kdo jsem?

Jméno:

Povolání:Certifikace:

Autor:

Co dělám:

Tomáš Solař

DBA, konzultant, školitel, autor, bloggerOracle ACE, OCP 10g/11g, OCE 10g/11g a další.

Oracle Database 11g - Hotová řešení (cpress)Oracle DBA – examples from practice (ebook)

- Spravuji databáze a OFM klientům, kteří to chtějí.- Školím lidi, které to zajímá.- Pracuji na projektech, které jsou zajímavé.- Připravuji webináře a semináře, protože mě to baví.- Pořádám workshopy, protože teorie nestačí.- Píši o problémech a jejich řešení. - Bavím se s lidmi, protože rád poslouchám.

Single vs cluster

Tomas Solar Consulting

Inst 1

Inst 2Inst 1 Inst 2 Inst 3

DB1

DB2

DB Sdílené uložištěLokální uložiště

Single/non-clusterClustrový systém - RAC

Připojení k serveru

Tomas Solar Consulting

AplikaceAPP

server DB

KlientMiddle tier DB server

Sqlplus

Klient

Multitier

DB

DB server

Client/server

Tomas Solar Consulting

Celková architektura databáze Oracle 12c

Lze stáhnout ze stránek Oracle společně s dalsími podklady jako soubor poster.zip

SGA

Tomas Solar Consulting

Instance

otherDBW0 CKPT LGWR SMON PMON RECO

Data files Control files

redo a arch log

Architektura databáze

Database buffer cache

Redo log

buffer

Large pool

PGAJava pool Streams pool

Stack space

User global area

Server proceslistenerUser

proces

Pamětové struktury

Procesy

UložištěInstance = pamět + procesy

Databáze = instance + uložiště

Data dict. cache

Other (keep,recycle,..)

SGA Shared pool

Library cache

Tomas Solar Consulting

•Easy connect naming: TCP/IP a vypisuje se všeSQL> CONNECT hr/hr@dbserver.tomas-solar.com:1521/orcl

•Local naming: Používá se konfigurační soubor tnsnames.oraSQL> CONNECT hr/hr@orcl

•Directory naming: Použití jmeného serveru LDAPSQL> CONNECT hr/hr@orcl

•External naming: Použití podporovaných non-Oracle jmených služeb

Client/application serverOracle Net

tnsnames.orasqlnet.ora

Připojení do databáze

listener.orasqlnet.ora

Tomas Solar Consulting

Shared pool

Shared pool

Library cache

Data dictionary cache

Server result cache● SQL ● PL/SQL

Reserved pool

Parsing● kontrola syntaxe sql dotazu● kontrola objektů na které se odkazuje v dotazu● kontrola oprávnění (systémová i objektová)● převedení dotazu do byte-code (p-code)● vyhledání optimální cesty nebo exekučního

plánu

Data dictionary cache = row cacheLRU - algoritmus, co se nepoužívá se odstraní

= Dotazy

= Objekty

= Větší chunk

= Výsledky

SHARED_POOL_SIZE

Tomas Solar Consulting

Database buffer cache

Obsahuje data z● tabulek● indexu● materializovaných pohledů● systémová data

Stavy bloku● free - může být využitý● pinned - aktuálně používaný● dirty - změněný, čeká na

zápis do datového souboru

Database buffer cache

Default Buffer pool(databázové bloky)

Non-Default Buffer pool

Flash buffer area

DB_CACHE_SIZE

Tomas Solar Consulting

Redo log buffer

Redo log buffer

● drží informace o změnách● DML, DDL nebo interní operace● jak byla změna provedená

Kdy se zapisuje do redo log souboru:

● commit● každé 3 vteřiny● buffer z ⅓ plný● před každým zápisem

dirty bufferu (DBWn)

Detailní informace o redo logu rozebírám na webináři Core Oracle DBA: ZMĚNA BLOKU

LOG_BUFFER

Tomas Solar Consulting

Large pool

Large pool je využíván● RMAN● Shared server● Paralelní operace● I/O serverové procesy● Oracle XA - více databází● Advanced queuing● přímý zápis datová pumpa

Large pool

response queues

request queues

Oracle XA

backup/recovery

private SQL pro shared server

PX msg pool LARGE_POOL

SGA

Tomas Solar Consulting

Instance

otherDBW0 CKPT LGWR SMON PMON RECO

Data files Control files

redo a arch log

Architektura databáze

Database buffer cache

Redo log

buffer

Large pool

PGAJava pool Streams pool

Stack space

User global area

Server proceslistenerUser

proces

Pamětové struktury

Procesy

UložištěInstance = pamět + procesy

Databáze = instance + uložiště

Data dict. cache

Other (keep,recycle,..)

SGA Shared pool

Library cache

Tomas Solar Consulting

Program global area (PGA)

PGA obsahuje informace privátní nebo vztahující se k dané session.

PGA

SQL work area● sort area● hash area

User global area (UGA)● session

variables● OLAP pool

Private SQL area● persistent area● runtime area

Třídení, hash joins. Cursory.

Řídící informace k session. Bitmapové indexy.

Překopírovaný kontext z shared poolu pro konkrétní SQL dotaz.

Tomas Solar Consulting

EM Express - memory mamagement

Parametry pro nastavení paměti

SGA_MAX_SIZE

SGA_TARGET

MEMORY_TARGET

MEMORY_MAX_TARGET

PGA_AGGREGATE_TARGET

SHARED_POOL_SIZE

DB_CACHE_SIZE

LARGE_POOL_SIZE

JAVA_POOL_SIZE

STREAMS_POOL_SIZE

OTHER

Automaticmemorymanagement

Automaticsharedmemorymanagement

Tomas Solar ConsultingTomas Solar Consulting

Database smart flash cache

Tomas Solar ConsultingTomas Solar Consulting

Database buffer cache

SGA

Database smart flash

cache

● OS Solaris neb linux● 2x až 10x velikosti SGA● db file sequential read je top

wait event

DB_FLASH_CACHE_FILE = /dev/sda, /dev/sdb, /dev/sdcDB_FLASH_CACHE_SIZE = 32G, 32G, 64G

Tomas Solar Consulting

Backgroud procesy

PMON - Řídí systémové server procesy, po pádu uvoňuje zdroje, rollback.SMON - Zodpovědný za instance recovery. Po pádu databáze.DBWn - Zapisuje do datových souborů. Až 20.LGWR - Zapisuje do redo logů.CKPT - Zápis dirty buffers do datových souborů plus kontrolní soubor.

SMON díky tomu ví, odkud má dělat recovery.ARCn - Vytváří archívní soubory. Max 30.MMON - Podporuje AWR, sbírá statistiky, snapshoty, kontroluje thresholdyMMNL - Zapisuje ASH statistikyz bufferu (SGA) na disk.CJQ0 - Kontroluje naplánované úlohy.J000 - Slave proces spouští vlastní úlohy. Max 1000.DIA0 - Řeší deadlock situace a další hangy.VKTM - Časovač v databázi.LREG - Registrace databáze do listeneru

Tomas Solar Consulting

Background procesy

Tomas Solar Consulting

Instance

otherDBW0 CKPT LGWR SMON PMON RECO

Data files Control files

redo logy

Database writer (DBWn)

Database buffer cache

Redo log

buffer

Large pool

SGA Shared pool

Library cache

Data dict. cache

Other (keep,recycle,..)

Java pool Streams pool

Uložiště

arch logy

DB_WRITER_PROCESSESZapisuje dirty buffers z LRUW list tzv. incremental checkpoint

DBWn zapisuje do datových souborů, když nastane:

● shutdown● checkpoint● recovery time překročen● je potřeba blok a není

žádný free● spuštěn DDL příkaz● každé 3 vteřiny● a další

Tomas Solar Consulting

Instance

otherDBW0 CKPT LGWR SMON PMON RECO

Data files Control files

redo logy

Redo log writer (LGWR)

Database buffer cache

Redo log

buffer

Large pool

SGA Shared pool

Library cache

Data dict. cache

Other (keep,recycle,..)

Java pool Streams pool

Uložiště

arch logy

- Před DBWn se musí zapsat změny z redo log bufferu do souboru.- Musí existovat aspoň člen ve skupině.- Fast commit - odložen zápis do datového souboru- Group commits - pokud je hodně změn, zapisuje se do redo a nakonec zapíše jen jeden commit.

Tomas Solar Consulting

Instance

otherDBW0 CKPT LGWR SMON PMON RECO

Data files Control files

redo logy

Checkpoint process (CKPT)

Database buffer cache

Redo log

buffer

Large pool

SGA Shared pool

Library cache

Data dict. cache

Other (keep,recycle,..)

Java pool Streams pool

Uložiště

arch logy

Checkpoint definuje system change number (SCN) v redo.- Je to zásadní informace pro obnovu.- Updetuje se hlavička datových souboru a kontrolní soubor.- Veškeré změny před tímto SCN jsou zapsané i v datových souborech.

Tomas Solar Consulting

Instance

ARCnDBW0 CKPT LGWR SMON PMON RECO

Data files Control files

redo logy

Archiver process (ARCn)

Database buffer cache

Redo log

buffer

Large pool

SGA Shared pool

Library cache

Data dict. cache

Other (keep,recycle,..)

Java pool Streams pool

Uložiště

arch logy

- Aktivuje se při zapnutí archívního módu.- Může být více destinací i procesů.

Tomas Solar Consulting

Data filesControl files

redo logy

Uložiště - rozložení

arch logybackup

init file

passwd file

alert log

trace files

select name from v$controlfile;

select member from v$logfile;

select name from v$datafile;

show parameter spfile;

Tomas Solar Consulting

Logická a fyzická struktura

Database

Tablespace

Segment

Extent

Oracle data block

Data file

File system or

raw devices

Logical Physical

Tomas Solar Consulting

Logická a fyzická struktura

Database

Tablespace

Segment

Extent

Oracle data block

Logical

Tomas Solar Consulting

Instance

otherDBW0 CKPT LGWR SMON PMON RECO

Data files Control files

redo a arch log

Architektura databáze

Database buffer cache

Redo log

buffer

Large pool

SGAPGAShared pool

Library cache

Data dict. cache

Other (keep,recycle,..)

Java pool Streams pool

Stack space

User global area

Server proceslistenerUser

proces

Pamětové struktury

Procesy

UložištěInstance = pamět + procesy

Databáze = instance + uložiště

Tomas Solar Consulting

Architektura databáze

Automatic storage management

Tomas Solar Consulting

Diskové pole, NAS, SAN, lokální..

DiskgroupsDG1 DG2FRA

Soubory dané databáze

DB DB DB

ASM ASM ASM

Servery● Single nebo RAC● Běží na nich ASM instance● Běží na nich libovoný

počet db

Tomas Solar Consulting

Logická a fyzická struktura

Database

Tablespace

Segment

Extent

Oracle data block

Data files

File system or

raw devices

ASM

ASMallocation

unit

ASMdisk group

ASMfile

ASMextent

ASMdisk

Logical Physical

Disk A15

Disk B26

Disk C37

Disk D48

ASM fileDisk group

Extentmap

Fileextent

Extent maps

Tomas Solar ConsultingTomas Solar Consulting

Tomas Solar Consulting

S čím mohu pomoci

● Provést základní healthcheck● Zkonzultovat váš stávající stav● Připravit školení, workshop, webinář● Zajistit support databazí. Spolupráce

od 4h měsíčně● Spolupráce na projektech● EMERGENCY kontakt● a další

Kontakt:

Web: http://www.tomas-solar.com/kontakt/Mail: tom@tomas-solar.comTel: 731 196 647Skype: database-administrator

Bezplatná konzultace !Skype, hangout, telefon.

Tomas Solar Consulting

Děkuji za pozornost.Napište mě ihned.Dokud máte otázky v hlavě

Těším se na dalším webináři.Děkuji za vyplnění dotazníku, který Vám zašlu.http://www.tomas-solar.com/dotaznik-k-webinari/

Registrace na komunitním webu pro DBA.http://database-administrator.com/

Registrace k odběru ebooku http://www.tomas-solar.com/ebook-zdarma/

Recommended