There are many features in the Oracle 10g which got introduced for the
first time in the RDBMS. These features not only made the DBA's life
easy but also gave the DBAs time to work on the important tasks instead
of spending time in analysing the database memory, storage, file system,
etc. I will go through every new feature in details in coming few days,
but to begin with I will list here a brief description of all the
latest features.
Oracle Database 10g has a long list of
impressive architecture enhancements over its previous versions. Oracle
has made this database very sophisticated and powerful, and has
automated many of the traditional and mundane administrative functions.
Oracle has tried to automate as much database functionality as possible
and made it more scalable. Several changes have been made to improve
memory structures, resource management, storage handling, SQL tuning,
data movement, recovery speed, and globalization. This chapter will go
over the most notable revisions to the database architecture for
releases 1 and 2 of the Oracle Database 10g and any significant
improvements for Release 2 is specifically mentioned in this and all
chapters.
SYSAUX Tablespace
The SYSAUX
tablespace is an auxiliary tablespace that provides storage for all non
sys-related tables and indexes that would have been placed in the SYSTEM
tablespace. SYSAUX is required for all Oracle Database 10g
installations and should be created along with new installs or upgrades.
Many database components use SYSAUX as their default tablespace to
store data. The SYSAUX tablespace also reduces the number of tablespaces
created by default in the seed database and user-defined database.
Rename Tablespace Option
Oracle
Database 10g has implemented the provision to rename tablespaces. To
accomplish this in older versions, you had to create a new tablespace,
copy the contents from the old tablespace to the new tablespace, and
drop the old tablespace. The Rename Tablespace feature enables
simplified processing of tablespace migrations within a database and
ease of transporting a tablespace between two databases.
Automatic Storage Management
Automatic
Storage Management (ASM) is a new database feature for efficient
management of storage with round-the-clock availability. It helps
prevent the DBA from managing thousands of database files across
multiple database instances by using disk groups. These disk groups are
comprised of disks and resident files on the disks. ASM does not
eliminate any existing database functionalities with file systems or raw
devices, or Oracle Managed Files (OMFs). ASM also supports RAC
configurations.
Temporary Tablespace Group
A
temporary tablespace is used by the database for storing temporary
data, which is not accounted for in recovery operations. A temporary
tablespace group (TTG) is a group of temporary tablespaces. A TTG
contains at least one temporary tablespace, with a different name from
the tablespace. Multiple temporary tablespaces can be specified at the
database level and used in different sessions at the same time.
In
Oracle Database 10g, each database user will have a permanent
tablespace for storing permanent data and a temporary tablespace for
storing temporary data. In previous versions of Oracle, if a user was
created without specifying a default tablespace, SYSTEM tablespace would
have become the default tablespace. For Oracle Database 10g, a default
permanent tablespace can be defined to be used for all new users without
a specific permanent tablespace.
BigFile Tablespace
Gone
are those days of tablespaces in the range of a few megabytes. These
days, database tables hold a lot of data and are always hungry for
storage. To address this craving, Oracle has come up with the Bigfile
tablespace concept. A BigFile tablespace (BFT) is a tablespace
containing a single, very large data file. With the new addressing
scheme in 10g, four billion blocks are permitted in a single data file
and file sizes can be from 8TB to 128TB, depending on the block size. To
differentiate a regular tablespace from a BFT, a regular tablespace is
called a small file tablespace. Oracle Database 10g can be a mixture of
small file and BigFile tablespaces.
BFTs are supported only for
locally managed tablespaces with ASM segments and locally managed undo
and temporary tablespaces. When BFTs are used with Oracle Managed Files,
data files become completely transparent to the DBA and no reference is
needed for them. BFT makes a tablespace logically equivalent to data
files (allowing tablespace operations) of earlier releases.
Prior
to Oracle Database 10g, K and M were used to specify data file sizes.
Because the newer version introduces larger file sizes up to 128TB using
BFTs, the sizes can be specified using G and T for gigabytes and
terabytes, respectively. For using BFT, the underlying operating system
should support Large Files. In other words the file system should have
Large File Support (LFS).
Cross-Platform Transportable Tablespaces
In Oracle 8i
database, the transportable tablespace feature enabled a tablespace to
be moved across different Oracle databases using the same operating
system. Oracle Database 10g has significantly improved this
functionality to permit the movement of data across different platforms.
This will help transportable tablespaces to move data from one
environment to another on selected heterogeneous platforms (operating
systems). Using cross-platform transportable tablespaces, a database can
be migrated from one platform to another by rebuilding the database
catalog and transporting the user tablespaces. By default, the converted
files are placed in the flash recovery area (also new to Oracle
Database 10g), which is discussed later in this chapter. A list of fully
supported platforms can be found in v$transportable_platform.
Performance Management Using AWR
Automatic
Workload Repository (AWR) is the most important feature among the new
Oracle Database 10g manageability infrastructure components. AWR
provides the background services to collect, maintain, and utilize the
statistics for problem detection and self-tuning. The AWR collects
system-performance data at frequent intervals (generally 60 minutes) and
stores them as historical system workload information for analysis.
These metrics are stored in the memory for performance reasons. These
statistics are regularly written from memory to disk by a new background
process called Memory Monitor (MMON). This data will later be used for
analysis of performance problems that occurred in a certain time period
and to do trend analysis. Oracle does all this without any DBA
intervention. Automatic Database Diagnostic Monitor (ADDM), which is
discussed in the next section, analyzes the information collected by the
AWR for database-performance problems.
Automatic Database Diagnostic Monitor (ADDM)
Automatic
Database Diagnostic Monitor (ADDM) is the best resource for database
tuning. Introduced in 10g, ADDM provides proactive and reactive
monitoring instead of the tedious tuning process found in earlier Oracle
versions. Proactive monitoring is done by ADDM and Server Generated
Alerts (SGAs). Reactive monitoring is done by the DBA, who does manual
tuning through Oracle Enterprise Manager or SQL scripts.
Statistical
information captured from SGAs is stored inside the workload repository
in the form of snapshots every 60 minutes. These detailed snapshots
(similar to STATSPACK snapshots) are then written to disk. The ADDM
initiates the MMON process to automatically run on every database
instance and proactively find problems.
DROP DATABASE Command
Oracle
Database 10g has introduced a means to drop the entire database with a
single command: DROP DATABASE. The DROP DATABASE command deletes all
database files, online log files, control files, and the server
parameter (spfile) file. The archive logs and backups, however, have to
be deleted manually.
Data Pump Utilities
Data
Pump is the new high-speed infrastructure for data and metadata
movement in Oracle Database 10g. The Data Pump commands are similar to
the traditional export and import commands, but they are different
products. Data Pump provides a substantiale performance improvement over
the original export and import utilities. It also provides faster data
load and unload capability to existing tables. Using Data Pump,
platform-independent flat files can be moved between multiple servers.
You can use the new network mode to transfer data using database links.
Export and import operations
in Data Pump can detach from a long-running job and reattach to it
later with out affecting the job. You can also remap data during export
and import processes.
The names of data files, schema names, and tablespaces from the source
can be altered to different names on the target system. It also supports
fine-grained object selection using the EXCLUDE, INCLUDE, and CONTENT
parameters.
Data Pump Export (dpexp) is the utility for unloading
data and metadata from the source database to a set of operating system
files (dump file sets). Data Pump Import (dpimp) is used to load data
and metadata stored in these export dump file sets to a target database.
In
Oracle Database 10g Release 2, a default DATA_PUMP_DIR directory object
and additional DBMS_DATAPUMP API calls have been added, along with
provisions for compression of metadata in dump files, and the capability
to control the dump file size with the FILESIZE parameter.
This
section has reviewed the significant new features introduced in Oracle
Database 10g. I will touch over the new processes introduced in Oracle
Database 10g to support these features.