33
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

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

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

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

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

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

Webinář v rámci cyklu Oracle DBA

Tomáš Solař, Oracle ACETomas Solar Consulting

Téma: Architektura databáze Oracle 12c

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

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.

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

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

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

Připojení k serveru

Tomas Solar Consulting

AplikaceAPP

server DB

KlientMiddle tier DB server

Sqlplus

Klient

Multitier

DB

DB server

Client/server

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

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

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

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

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

Tomas Solar Consulting

•Easy connect naming: TCP/IP a vypisuje se všeSQL> CONNECT hr/[email protected]: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

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

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

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

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

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

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

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

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

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

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

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

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.

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

Tomas Solar Consulting

EM Express - memory mamagement

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

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

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

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

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

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

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

Tomas Solar Consulting

Background procesy

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

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ší

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

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.

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

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.

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

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ů.

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

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;

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

Tomas Solar Consulting

Logická a fyzická struktura

Database

Tablespace

Segment

Extent

Oracle data block

Data file

File system or

raw devices

Logical Physical

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

Tomas Solar Consulting

Logická a fyzická struktura

Database

Tablespace

Segment

Extent

Oracle data block

Logical

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

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ě

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

Tomas Solar Consulting

Architektura databáze

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

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

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

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

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

Disk A15

Disk B26

Disk C37

Disk D48

ASM fileDisk group

Extentmap

Fileextent

Extent maps

Tomas Solar ConsultingTomas Solar Consulting

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

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: [email protected]: 731 196 647Skype: database-administrator

Bezplatná konzultace !Skype, hangout, telefon.

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

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/