less01 dba1
Post on 06-May-2015
1.846 Views
Preview:
DESCRIPTION
TRANSCRIPT
1Copyright © 2007, Oracle. All rights reserved.
Exploring the Oracle Database Architecture
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
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
Copyright © 2007, Oracle. All rights reserved.1 - 4
Connecting to a Server
Client Middle tier Server
Multitier architecture shown
Copyright © 2007, Oracle. All rights reserved.1 - 6
Database
Data filesOnline redo
log filesControl
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
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
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
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
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 Background
processServer
process 1Server
process 2
Shared SQL area
Library cache
Data dictionary cache
Other
I/O buffer
Response queue
Request queue
Free memory
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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).
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
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
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
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
top related