Unit1 DB Architecture Ref
Unit1 DB Architecture Ref
Oracle Server:
• Is a database management system that provides an open,
comprehensive, integrated approach to information
management.
• Consists of an Oracle Instance and an Oracle database
Database Instance:
• Instance –After the complete installation of Oracle 10g, when you start
the Oracle database , then you have what is referred to as an“Oracle
10g Database Instance”. It is the actual execution of DBMS software
that manages data in the databases tablespace.
SGA
• Database Buffer Cache stores data values which are written later to the
data files by the database writer (DBWn).
• Redo Log Buffer stores a copy of the changed data from user
transaction. This data is periodically written to the Redo Log Files by the
Log Writer (LGWR).
• Large Pool is a work area given for backup and recovery operations.
• Java Pool stores the machine-language and execution plans for Java
commands used in application programs and database operations.
• Each server process has a PGA allocated that is a private area for each
server. This is the work area for each application. The application code,
along with copies of the data, is located here.
• There are various background processes that support and monitor the
server processes. These background processes also handle the data
management and keep the database running smooth and efficiently.
• Checkpoint (CKPT) :
-responsible for signaling DBWn and LGWR to write the contents of the
Database Buffer Cache and the Redo Log Cache to the data files and
Redo Log files respectively.
• Archiver (ARCn) :
-reads the Redo Log files after they are filled & copies it to a corresponding
Archive Log File.
-there can be up to 10 separate archive processes per instance Arc0-Arc9.
• Recoverer (RECO) :
-detect and correct errors as a result of communications problems in a
distributed database environment.
Parameter File
1
Control Files
id
en
tif
es i es
ifi
ent
id
Provides changes to
2 3
Data Files Redo Log Files
• Purpose:
- specifies the configuration information about the database instance.
• Purpose:
-contain the actual data stored in the database.
-contains user data stored in tables + includes indexes, data dictionary,
and rollback segments.
• Characteristics:
1. Data files are composed of Oracle blocks, which are in turn composed
of operating system blocks
2. Oracle block sizes range from 2 Kb to 32 Kb – average size is 8 Kb
3. Data files belong to only one database and to only one tablespace
within that database
4. Data files are the lowest level of granularity between an Oracle
database and the operating system
5. When you map out a database onto the OS I/O sub-systems, the
smallest unit you can put in any location is a data file
6. Have a .dbf suffix
• Characteristics:
1. By default, an Oracle 10g database contains three redo log groups,
REDO01.log, REDO02.log and REDO03.log
2. Every Oracle 10g database must have at least two redo log groups
3. The database will write log entries to a subsequent redo log group when the
previous redo log group fills up
4. As a general rule , there should be one redo log group for approximately every
four database users that create action queries
5. Oracle 10g keeps track of the Redo Log file by using a redo log sequence
number, this number is recorded inside the file as they are used
6. The redo log sequence number is different than the operating system file name
that is used to identify the physical file
7. If the database is in ARCHIVELOG mode full Redo Log files are copied to
Archive Log files before they are reused, otherwise they are written over
8. Have a .log suffix
Database
Instance
Tablespaces
Tablespaces
Segments
Extents
Extents
Data
Blocks Data
Extents Blocks
Extents
Data
Blocks Data
Data Blocks
Blocks
• Extents are contiguous units of storage, usually disk space, within a segment. Oracle
uses extents for performance reasons by storing data that needs to be retrieved in a
single disk I/O. An extent is made up of multiple data blocks
• Data Blocks are the smallest unit of Oracle database storage. Oracle 10g stores 8,192
bytes (8K) in one data block. A data block is comprised of multiple operating system
blocks. Depending on the operating system an operating system block can store 512 to
4K bytes. A data block contains header, directory and row data:
1.Block Header - operating system block address
2.Table Directory - identifies the database table for which the following data belongs
3.Row Directory - identifies the database rows for which the data belongs
4.Row Data - stores the actual row values