Skip navigation.


Part 2 - The Bitmap Supremacy

The Structure of a Bitmap Index

I’ve been tuning Oracle database applications for a long time now. I started out recognising some simple patterns and applying template fixes (Got a full table scan? Use an index!) but such a collection of “Do this; don’t do that” anecdotes will only take you so far. If you are curious (I was), you can uncover the reasons why one method is faster than another; i.e. what is the computer doing to make slow code so slow. I found that a good understanding of the internals meant that you didn’t always need to know how to tune a specific example because you could work it out for yourself.

In a database application, these investigations frequently lead to data structures; how does the database store its information and how does it retrieve it? Good information on the internals of Bitmap Indexes is hard to piece together, so in Part 2 of this Bitmap Indexing epic we will look more closely at the internals of Bitmap indexes.

Part 3 - The Bitmap Dominion

Bitmap Execution Plans

This is Part 3 of The Bitmap Conspiracy, a four part epic on Bitmap Indexes.

In Part 1 we touched briefly on how Oracle can use Bitmap Indexes to resolve queries by translating equality and range predicates into bitmap retrievals. Now that we know more about how they are stored (see Part 2), let’s look closer at some of the operations that Oracle uses to access Bitmap Indexes and manipulate bitmaps.

Part 4 - The Bitmap Legacy

  1. Myth #1: Bitmap indexes are good for low-cardinality columns

Myth #1: Bitmap indexes are good for low-cardinality columns

This is one of those myths that is probably best demonstrated by example. First, let’s create some test data: 10 million rows with the following columns:

  • COL1 – Alternating values of 1 and 0 – not indexed
  • COL2 – Identical to COL1 – bitmap indexed
  • PAYLOAD – 100 bytes of X’s to make the rows a realistic width – not indexed

COL1 and COL2 are identical low cardinality columns: there are only two valid values.

About Apps 11i Clone – A Human Touch

Apps clone is like cloning a human being. Please read the detail below.

1) Run adpreclone on DB/CM/AP tiers

This is pre-requisite step of cloning 11i prod and will not change anything in any system. This script will only create on $COMMON_TOP, a directory called "clone", with a basic structure of executable, scripts, templates and java files.

Deterministic function vs scalar subquery caching. Part 1

I recently did a comparison caching mechanisms of scalar subquery caching(SSC) and deterministic functions in 11.2. Unfortunately, I do not have enough time to do a full analysis, so I will post it in parts.

Today’s topics:
1. Both mechanisms are based on hash functions.(About hash tables and hash collisions for scalar subquery caching excelent wrote Tom Kyte and Jonathan Lewis(“Cost-Based Oracle fundamentals” chapter 9))
2. Deterministic caching depends on fetch size(arraysize) – results cached only within one fetch call, ssc has no this limitation.

Just another version of Tom Kyte’s runstats (runstats_pkg)

I want to share my modifications of Tom Kyte's runstats package, which include:

  • Any number of runs sets for analyzing

  • Standalone: No need to create other objects

  • Ability to specify session SID for statistics gathering

  • Ability to specify what to gather: latches, stats or both

  • Separate mask filters for output by statname and latchname

  • Ability to specify difference percentage for output separately for latches and statistics

  • More accurate with some statistics because of avoiding global temporary table usage, but less in

Oracle Z to A -- I N

Oracle Database A to Z question and answers and
very importantly the Experiences also you can share here...

The Blog is for Both the beginners and as well as experienced people to discuss and gain knowledge in Oracle.

Here we are going to share every thing about Oracle....

And Simply saying, we will only work on oracle related but nothing else here....

We will Eat Oracle, Drink Oracle and Walk Oracle

Diff B/W Truncate & Delete

1.DML data can be recovered by rollback before commit
2.Remove any subset of data
3.Delete is slower when table have numerous indexes and triggers
4.DML triggers fire for delete mthod can be recovered after commit by flashback method
6.high water mark will remain the same deleted info capture with returning clause
8. you can not delete data if function based index is invalid
9. can not delete data from complex views.

Oracle Database 12c: New Features - Pluggable Databases

mikerajendran's picture

Oracle Database 12c: New Features – Pluggable Databases by Michael Rajendran


Oracle has leap forwarded the middleware technologies especially the database technology into the cloud. So far Oracle has been the traditional RDBMS database suitable for the private enterprise data centers within corporate walls.


The COST column cannot be used to compare execution plans. Punkt.