I have a table with 1 million records out of which 10,000 records are of unique records, then if I will implement index, then which type of index shall I use and why shall I use?
Answer Posted / mrityunjay singh
Fully indexing a large table with a traditional B-tree index can be prohibitively expensive in terms of disk space because the indexes can be several times larger than the data in the table. Bitmap indexes are typically only a fraction of the size of the indexed data in the table.
An index provides pointers to the rows in a table that contain a given key value. A regular index stores a list of rowids for each key corresponding to the rows with that key value. In a bitmap index, a bitmap for each key value replaces a list of rowids.
Each bit in the bitmap corresponds to a possible rowid, and if the bit is set, it means that the row with the corresponding rowid contains the key value. A mapping function converts the bit position to an actual rowid, so that the bitmap index provides the same functionality as a regular index. Bitmap indexes store the bitmaps in a compressed way. If the number of distinct key values is small, bitmap indexes compress better and the space saving benefit compared to a B-tree index becomes even better.
| Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers
What is a ddl command?
Is it possible to update views?
what are different types of collation sensitivity? : Sql dba
What are stuff and replace function?
What does count (*) mean in sql?
how to convert character strings to dates? : Sql dba
How many types of cursors supported in pl/sql?
Is grant a ddl statement?
Can we use update in sql function?
How do you rank data in sql?
Explain the select statement in sql?
What is the purpose of cursors in pl/sql?
How can we make an if statement within a select statement?
How does sql*loader handles newline characters in a record? : aql loader
What is pl sql in oracle?