Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Block Change Tracking - Documentation still valid?

Dude!Sep 9 2010 — edited Dec 25 2010
Hello,

I hope this isn't too boring. I'm still trying to fully understand how BCT works and did a few tests.

The database I'm using is a standard 11.2.0.1 orcl example database using ASM, running OEL 5.5 inside Virtualbox. I'm the only user.

Q1: A level 0 backup is faster as soon as BCT is enabled. Why? I have tested this several times with pretty constant results as shown below.

Q2: The Oracle documentation outlines 8 bitmap limit. Test 4 shows that a cumulative incremental backup was still using BCT in up to 9 incremental backups. Only after the 9th backup, the reference to the level 0 bitmap seems to have lost, however, the cumulative backup still finishes in about half the time than without using BCT. Why?

http://download.oracle.com/docs/cd/E11882_01/backup.112/e10642/rcmbckba.htm#i1032148
Consider the eight-bitmap limit when developing your incremental backup strategy. For example, if you make a level 0 database backup followed by seven differential incremental backups, then the block change tracking file now includes eight bitmaps. If you then make a cumulative level 1 incremental backup, then RMAN cannot optimize the backup, because the bitmap corresponding to the parent level 0 backup is overwritten with the bitmap that tracks the current changes.

I hope someone can explain.


TEST 1
RMAN> delete backup;
RMAN> sql 'alter database disable block change tracking';
RMAN> backup incremental level 0 database; *00:02:06*
RMAN> backup incremental level 1 database; *00:01:05*
RMAN> backup incremental level 1 database; *00:01:05*
RMAN> backup cumulative incremental level 1 database; *00:01:05*

TEST 2
RMAN> delete backup;
RMAN> sql 'alter database disable block change tracking';
RMAN> sql 'alter database enable block change tracking';
RMAN> backup incremental level 0 database; *00:01:46*
RMAN> backup incremental level 1 database; *00:00:03* (using BCT)
RMAN> backup incremental level 1 database; *00:00:03* (using BCT)
RMAN> backup cumulative incremental level 1 database; *00:00:03* (using BCT)

TEST 3
RMAN> delete backup;
RMAN> sql 'alter database disable block change tracking';
RMAN> backup incremental level 0 database; *00:02:05*
RMAN> sql 'alter database enable block change tracking';
RMAN> backup incremental level 1 database; *00:01:06*
RMAN> backup incremental level 1 database; *00:00:07* (using BCT)
RMAN> backup cumulative incremental level 1 database; *00:01:05*

TEST 4
RMAN> delete backup;
RMAN> sql 'alter database disable block change tracking';
RMAN> sql 'alter database enable block change tracking';
RMAN> backup incremental level 0 database; *00:01:50*
RMAN> backup incremental level 1 database;
RMAN> backup incremental level 1 database;
RMAN> backup incremental level 1 database;
RMAN> backup incremental level 1 database;
RMAN> backup incremental level 1 database;
RMAN> backup incremental level 1 database;
RMAN> backup incremental level 1 database;
RMAN> backup cumulative incremental level 1 database; *00:00:04* (using BCT)
RMAN> backup cumulative incremental level 1 database; *00:00:07* (using BCT)
RMAN> backup cumulative incremental level 1 database; *00:00:35* (using BCT ?)
RMAN> backup cumulative incremental level 1 database; *00:00:36* (using BCT ?)

I check the hidden BCT parameters:

bctbitmaps_per_file = 8



Thanks
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Oct 8 2010
Added on Sep 9 2010
2 comments
1,469 views