What is bitmap index

Bitmap indexes are designed for data warehousing/ad‐hoc query environments where the full set of queries that may be asked of the data is not totally known at system implementation time.
 
Bitmap indexes are structures that store pointers to many rows with a single index key entry, as compared to a B*Tree structure where there is parity between the index keys and the rows in a table.
 

Example
             CREATE BITMAP index job_idx on emp(job);


Oracle will store something like this:
Value 1 2 3 4 5 6 7 8 9 10
ANALYST 0 0 0 0 0 0 0 1 0 1
CLERK 1 0 0 0 0 0 0 0 0 0
MANAGER 0 0 0 1 0 1 1 0 0 0
PRESIDENT 0 0 0 0 0 0 0 0 1 0
SALESMAN 0 1 1 0 1 0 0 0 0 0

Row 8 and 10 have the value for ANALYST whereas row 4,6 and 7 have the value for MANAGER.

1 comment: