30 April 2006

Interesting Oracle 10g features




What I like about Oracle 10g is that it has finally made advances in self-diagnosis and self-monitoring. Oracle has been promissing a self-tuning database for ages, and this is the first version that steps considerably closer to this goal.

Interesting Oracle 10g features:

***) Cloning Oracle software installations
You can use Oracle Universal Installer to clone the whole Oracle software installation to another servers.
***) Data Pump
With Data Pump, jobs can be paused, monitored, resumed, restarted or left to run in the background. R/W external tables (they used to be r/o only) can be created with the ORACLE_DATAPUMP access driver; this is mostly convenient for very large tables.
Unfortunately, data pump files are not compatible with imp/exp dump files, which would be nice to have.

***) Advisors
There are plenty of new advisors in 10g, some of them (like SQL Tuning Advisor) are still not giving much useful information, but this is the beginning in fulfilling a dream of self-tuned database
***) Easy installation
More information in one of my other notes on this BLOG.

***) New scheduling system
Finally a more sophisticated scheduling system: Job Scheduler. In short: a job specifies what is going to be executed (program) and when (schedule). Both programs and schedules can be reused by jobs. Jobs can be exported/imported from one system to another and they can be managed in classes (groups). Even better, classes can be prioritised, so that high priority jobs will get run first. The DBA can create a Window (a time period) and assign a job class to a resource group.

***) Lots of small features
Recycle bin, SYSAUX being used instead of SYSTEM tablespace, new global default tablespace, shrinking objects and resetting HWM at the same time, bigfile data files (up to 8 exabytes), ...
Flashback Transaction Query feature. This can be used instead of Log Miner and uses undo_retention parameter.

***) Self-Monitoring
MMON checks tablespaces' free space every 10 minutes and logs data into AWR. The DBA can define critical and warning thresholds and when breached, a dbsm_server_alert can alert the DBA (by e-mail or shown on the console's home).

***) Backup/recovery
The Block Tracking feature tracks all changed data file blocks, and "indexes" those changed blocks into the binary file. RMAN does not need to read the whole data file to perform an incremental backup, only those changed blocks.
RMAN can compress backups. I couldn't find more details about what type of compression is done, so I can only assume that UTL_COMPRESS is used for the compression.
Flashback database is great for speedy recovery in time.

***) Security
10g didn't introduce many new security features, probably because 9i was hailed as "unbreakable" and had quite a good security.
Auditing can be extended to add SQL statements and bind variables for audited operations
VPD policies can fire now on specific columns

Free Oracle database

Everybody likes something for free, especially if it is a good product from a big, proven company. Oracle Express Edition is a free database that companies can seriously consider for small-scale databases. The Express Edition has some limits: the server must have only 1 CPU server, up to 1Gb of memory, maximum database size of 4Gb, and only one instance per server.

I see this as Oracle's attempt to compete with some of the open-source databases like PostgreSQL and MySQL, therefore availability only for 32-bit Linux and Windows.

Overall, a good move from Oracle!

Oracle 10g Installation

The Oracle 10g installation is much more sleek than the installations in previous Oracle versions. For a start, there is only 1 CD required to install the basic Oracle software. It takes about 15 minutes to install Oracle Standard Edition and a bit more than 1Gb in disk space. Another CD, called "a companion CD" is then used to add additional features like HTML DB with HTTP server, JDBC drivers, SQLJ, Examples, JPublisher, Oracle Text, etc.

I also prefer adding SQL Developer, which is an excellent free tool for general data browsing and running SQL.

After the installation you will notice couple of new services:
I personally like installing the software first, checking the installation and then creating a new database. If you use DBCA to create a new database, the whole process takes less than half an hour and a basic database takes 1Gb of space.
Oracle 10g has a list of instance parameters that you can set up and off you go. The following list of initial instance parameters will give you a reasonable database to start with:
Make sure your database has the default tablespace defined and you can also do some of the following:
To manually start your EM console, type

21 April 2006

Touch Count Buffer Algorithm : Short explanation

Touch count algorithm was introduced in Oracle 8i, to resolve buffer cache disturbances by large scans. This algorithm makes the blocks earn their right to be at and to stay at the MRU end.

New concept of "touch-count" is introduced, where each buffer has a counter. When the buffer is touched, the counter goes up. Oracle tries to increase the counter only once in every 3 seconds

03 April 2006

Index snipets

B-TREEs
CLUSTERING FACTOR

INDEX SCANS

INDEX FRAGMENTATION

REGULAR DBA CHECKS

PRO-ACTIVE ACTIONS:

This page is powered by Blogger. Isn't yours?