What is an index and types of indexes. How many number of
indexes can be used per table ?

Answer Posted / madhu

https://doc.lagout.org/programmation/Databases/Oracle/Expert%20Indexing%20in%20Oracle%20Database%2011g.pdf

Index Type Usage
B-tree Default, balanced tree index; good for high-cardinality (high degree of distinct
values) columns. Use a normal B-tree index unless you have a concrete reason
to use a different index type or feature.
Index organized table: Efficient when most of the column values are included in the primary key. You
access the index as if it were a table. The data is stored in a B-tree like
structure.
Unique : A form of B-tree index; used to enforce uniqueness in column values. Often
used with primary key and unique key constraints, but can be created
independently of constraints.
Reverse-key : A form of B-tree index; useful to balance I/O in an index that has many
sequential inserts.
Key-compressed : Good for concatenated indexes where the leading column is often repeated;
compresses leaf block entries. This feature applies to a B-tree or an IOT index.
Descending A form of B-tree index; used with indexes where corresponding column values
are sorted in a descending order (the default order is ascending). You can’t
specify descending for a reverse key index and Oracle ignores descending if
the index type is bitmap.
Bitmap: Excellent in data warehouse environments with low-cardinality columns and
SQL statements using many AND or OR operators in the WHERE clause. Bitmap
indexes aren’t appropriate for online transaction processing (OLTP) databases
where rows are frequently updated. You can’t create a unique bitmap index.
Bitmap join : Useful in data warehouse environments for queries that utilize Star schema
structures that join fact and dimension tables.
Function-based : Good for columns that have SQL functions applied to them. This can be used
with either a B-tree or bitmap index.
Indexed virtual column : An index defined on a virtual column (of a table); useful for columns that have
SQL functions applied to them; viable alternative to using a function-based
index.
Virtual Allows you to create an index with no physical segment or extents via the
NOSEGMENT clause of CREATE INDEX; useful in tuning SQL without consuming
resources required to build the physical index. Any index type can be created
as virtual.
Invisible : The index is not visible to the query optimizer. However, the structure of the
index is maintained as table data is modified. Useful for testing an index
before making it visible to the application. Any index type can be created as
invisible.
Global partitioned Global index : across all partitions in a partitioned table or regular table. This
can be a B-tree index type and can’t be a bitmap index type.
Local partitioned Local index based on individual partitions in a partitioned table. This can be
either a B-tree or bitmap index type.
Domain Specific for an application or cartridge.
B-tree cluster Used with clustered tables.
Hash cluster Used with hash cluste
rs.

Is This Answer Correct ?    0 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is the command used to fetch first 5 characters of the string?

874


Why commit is not used in triggers?

570


How do you write a subquery?

512


What is on delete set null?

557


How do I run a pl sql program?

617






What is sql prepared statement?

534


Explian rowid, rownum? What are the psoducolumns we have?

554


What is clustered and nonclustered index in sql?

491


How to run pl sql program in mysql?

503


When do we use triggers?

576


What are the different sql languages?

527


What is example of database?

510


What is pragma in sql?

609


Why do we use sql constraints? Which constraints we can use while creating database in sql?

539


Define select, insert, create, delete, update, drop keywords

590