Oracle architecture ppt

34
1 Copyright © 2007, Oracle. All rights reserved. Exploring the Oracle Database Architecture

Transcript of Oracle architecture ppt

Page 1: Oracle architecture ppt

1Copyright © 2007, Oracle. All rights reserved.

Exploring the Oracle Database Architecture

Page 2: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 2

Objectives

After completing this lesson, you should be able to:• List the major architectural components of Oracle

Database• Explain the memory structures• Describe the background processes • Correlate the logical and physical storage structures

Page 3: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 3

Oracle Database

The Oracle relational database management system (RDBMS) provides an open, comprehensive, integrated approach to information management

Page 4: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 4

Connecting to a Server

Client Middle tier Server

Multitier architecture shown

Page 5: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 6

DatabaseData files

Online redo log files

Control files

Oracle Database Architecture: Overview

Databasebuffercache

Shared pool

Data dictionarycache

Librarycache

PMONSMON Others

Serverprocess

PGA

Archived log files

Userprocess

Instance

RECO

ARCn

SGA

DBWn

Redo logbuffer

LGWRCKPT

Page 6: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 7

Connecting to the Database

• Connection: Communication between a user process and an instance

• Session: Specific connection of a user to an instance through a user process

SQL> Select …Session

Connection

UserUser

processServer

process

Session

Page 7: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 8

Interacting with an Oracle Database

User

Databasebuffercache

Shared pool

Data dictionarycache

Librarycache

PMONSMON Others

Instance

RECOARCn

SGA

DBWn

Redo logbuffer

LGWRCKPT

Userprocess

Serverprocess

Page 8: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 10

Database

Oracle Database Server Structures

PMONSMON Others

Data filesOnline redo

log filesControl

files

Instance

RECOARCn DBWn LGWRCKPT

Storage structures

Userprocess

Serverprocess

Memory structures

Processes

Databasebuffercache

Shared pool

Data dictionarycache

Librarycache

SGA

Redo logbuffer

Page 9: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 11

Oracle Database Memory Structures

DB structures Memory - Process - Storage

SGA

Database buffercache

Redo log buffer

Java pool

Streams pool

Shared pool

Large pool

PGA PGA PGA Backgroundprocess

Serverprocess 1

Serverprocess 2

Shared SQL area

Library cache

Data dictionary cache

Other

I/O buffer

Response queue

Request queue

Free memory

Page 10: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 13

Database Buffer Cache

• Is part of the SGA • Holds copies of data blocks that are read from data files• Is shared by all concurrent users

PMONSMON Others

Instance

RECOARCn DBWn LGWRCKPT

Databasebuffercache

Shared pool

Data dictionarycache

Librarycache

SGA

Redo logbuffer

Page 11: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 14

Redo Log Buffer

• Is a circular buffer in the SGA • Holds information about changes made to the database• Contains redo entries that have the information to redo

changes made by operations such as DML and DDL

PMONSMON Others

Instance

RECOARCn DBWn LGWRCKPT

Databasebuffercache

Shared pool

Data dictionarycache

Librarycache

SGA

Redo logbuffer

Page 12: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 15

Shared Pool

• Is a portion of the SGA • Contains:

– Library cache— Shared SQL area

– Data dictionary cache– Control structures

PMONSMON Others

Instance

RECOARCn DBWn LGWRCKPT

Shared SQL area

Library cache

Data dictionary cache

Other

Databasebuffercache

Shared pool

Data dictionarycache

Librarycache

SGA

Redo logbuffer

Page 13: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 17

Allocation and Reuse of Memory in the Shared Pool

• Server process checks the shared pool to see if a shared SQL area already exists for an identical statement.

• Server process allocates a private SQL area on behalf of the session.

Serverprocess

Shared pool

Shared SQL area

Library cache

Data dictionary cache

Other

Page 14: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 19

Large Pool

Provides large memory allocations for:• Session memory for the shared server and the Oracle

XA interface• I/O server processes• Oracle Database backup and restore operations

Large pool

I/O buffer

Response queue

Request queue

Free memory

Java pool

Large pool

Shared poolDatabase

buffercache

Redo logbuffer

Streams pool

Page 15: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 20

Java Pooland Streams Pool

• Java pool memory is used in server memory for all session-specific Java code and data in the JVM.

• Streams pool memory is used exclusively by Oracle Streams to:

– Store buffered queue messages– Provide memory for Oracle Streams processes

Java pool Streams pool

Page 16: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 21

Process Architecture

• User process– Is started when a database user or a batch process

connects to Oracle Database• Database processes

– Server process: Connects to the Oracle instance and is started when a user establishes a session

– Background processes: Are started when an Oracle instance is started

DB structures - Memory Process - Storage

PMONSMON Others

Instance

RECOARCn DBWn LGWRCKPT

PGA

Userprocess

Serverprocess Background processes

Databasebuffercache

Shared pool

Data dictionarycache

Librarycache

SGA

Redo logbuffer

Page 17: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 22

Process Structures

Server n processes

SGA

Oracle background processes

PMON SMON Others RECO ARCn DBWn LGWRCKPT

Server ServerServerServer Server

Databasebuffercache

Shared pool

Data dictionarycache

Librarycache

SGA

Redo logbuffer

Page 18: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 24

Database Writer Process (DBWn)

Writes modified (dirty) buffers in the database buffer cache to disk:• Asynchronously while performing other processing• Periodically to advance the checkpoint

Database buffer cache

Database writer process

Data files

DBWn

Page 19: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 26

LogWriter Process (LGWR)

• Writes the redo log buffer to a redo log file on disk• Writes:

– When a user process commits a transaction – When the redo log buffer is one-third full– Before a DBWn process writes modified buffers to disk

Redo log buffer LogWriter process Redo log files

LGWR

Page 20: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 28

Checkpoint Process (CKPT)

• Records checkpoint information in– Control file – Each data file header

Checkpoint process

Data files

Control fileCKPT

Page 21: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 29

System Monitor Process (SMON)

• Performs recovery at instance startup• Cleans up unused temporary segments

Instance

Temporary segment

System Monitor process

SMON

Page 22: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 30

Process Monitor Process (PMON)

• Performs process recovery when a user process fails– Cleans up the database buffer cache– Frees resources that are used by the user process

• Monitors sessions for idle session timeout • Dynamically registers database services with listeners

Process Monitor process

Database buffer cache

Failed user process

UserPMON

Page 23: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 31

Recoverer Process

• Used with the distributed database configuration • Automatically connects to other databases involved in

in-doubt distributed transactions• Automatically resolves all in-doubt transactions• Removes any rows that correspond to in-doubt

transactions

Recoverer processin database A

In-doubt transactionin database B

RECO

Page 24: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 32

Archiver Processes (ARCn)

• Copy redo log files to a designated storage device after a log switch has occurred

• Can collect transaction redo data and transmit that data to standby destinations

Archiver process Archive destination Copies of redo log files

ARCn

Page 25: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 33

Other Processes

• MMON: Performs manageability-related background tasks

• MMNL: Performs frequent and lightweight manageability-related tasks

• MMAN: Performs automatic memory management tasks• CJQ0: Runs user jobs used in batch processing• QMNx: Monitors the Streams Advanced Queuing

message queues

Page 26: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 35

Server Process and Database Buffer Cache

Buffers:• Pinned• Clean• Free or unused• Dirty

Database writer

process

Databasebuffercache

SGA

Data files

DBWn

Serverprocess

Page 27: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 36

Database Storage Architecture

Online redo log files

Password file

Parameter file Archived redo log files

Control files Data files

Alert log and trace files

Backup files

DB structures - Memory - Process Storage

Page 28: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 38

Logical and Physical Database Structures

Database

Logical Physical

Tablespace Data file

OS block

Segment

Extent

Oracle datablock

Schema

Page 29: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 40

Tablespaces and Data Files

• Tablespaces consist of one or more data files.• Data files belong to only one tablespace.

USERS tablespace

Data file 1 Data file 2

Page 30: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 41

SYSTEM and SYSAUX Tablespaces

• The SYSTEM and SYSAUX tablespaces are mandatory tablespaces that are created at the time of database creation. They must be online.

• The SYSTEM tablespace is used for core functionality (for example, data dictionary tables).

• The auxiliary SYSAUX tablespace is used for additional database components (such as the Enterprise Manager Repository).

Page 31: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 42

Segments, Extents, and Blocks

• Segments exist in a tablespace.• Segments are collections of extents.• Extents are collections of data blocks.• Data blocks are mapped to disk blocks.

Segment Extents Data blocks

Disk blocks

Page 32: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 43

Database Architecture:Summary of Structural Components

• Memory structures:– System Global Area (SGA): Database buffer cache, redo

buffer, and various pools– Program Global Area (PGA)

• Process structures:– User process and server process– Background processes: SMON, PMON, DBWn, CKPT,

LGWR, ARCn, and so on• Storage structures:

– Logical: Database, schema, tablespace, segment, extent, and Oracle block

– Physical: Data files, control files, and redo log files

Page 33: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 44

Summary

In this lesson, you should have learned how to:• List the major architectural components of Oracle

Database• Explain the memory structures • Describe the background processes • Correlate the logical and physical storage structures

Page 34: Oracle architecture ppt

Copyright © 2007, Oracle. All rights reserved.1 - 45

Practice 1: Overview

This is a paper practice with questions about:• Database architecture• Memory• Processes• File structures