Presentation is loading. Please wait.

Presentation is loading. Please wait.

12 Copyright © Oracle Corporation, 2001. All rights reserved. Managing Indexes.

Similar presentations


Presentation on theme: "12 Copyright © Oracle Corporation, 2001. All rights reserved. Managing Indexes."— Presentation transcript:

1 12 Copyright © Oracle Corporation, 2001. All rights reserved. Managing Indexes

2 12-2 Copyright © Oracle Corporation, 2001. All rights reserved. Objectives After completing this lesson, you should be able to do the following: List the different types of indexes and their uses Create various types of indexes Reorganize indexes Maintain indexes Monitor the usage of an index

3 12-3 Copyright © Oracle Corporation, 2001. All rights reserved. Classification of Indexes Logical –Single column or concatenated –Unique or nonunique –Function-based –Domain Physical –Partitioned or nonpartitioned –B-tree Normal or reverse key –Bitmap

4 12-4 Copyright © Oracle Corporation, 2001. All rights reserved.

5 12-5 Copyright © Oracle Corporation, 2001. All rights reserved. B-Tree Index Index entry header Key column length Key column value ROWID Root Branch Leaf Index entry

6 12-6 Copyright © Oracle Corporation, 2001. All rights reserved.

7 12-7 Copyright © Oracle Corporation, 2001. All rights reserved. Bitmap Indexes key start ROWID end ROWID bitmap Table Index Block 10 Block 11 Block 12 File 3

8 12-8 Copyright © Oracle Corporation, 2001. All rights reserved.

9 12-9 Copyright © Oracle Corporation, 2001. All rights reserved. Comparing B-Tree and Bitmap Indexes B-tree Suitable for high-cardinality columns Updates on keys relatively inexpensive Inefficient for queries using OR predicates Useful for OLTP Bitmap Suitable for low-cardinality columns Updates to key columns very expensive Efficient for queries using OR predicates Useful for data warehousing

10 12-10 Copyright © Oracle Corporation, 2001. All rights reserved. Creating Normal B-Tree Indexes CREATE INDEX hr.employees_last_name_idx ON hr.employees(last_name) PCTFREE 30 STORAGE(INITIAL 200K NEXT 200K PCTINCREASE 0 MAXEXTENTS 50) TABLESPACE indx;

11 12-11 Copyright © Oracle Corporation, 2001. All rights reserved.

12 12-12 Copyright © Oracle Corporation, 2001. All rights reserved.

13 12-13 Copyright © Oracle Corporation, 2001. All rights reserved. Creating Indexes: Guidelines Balance query and DML needs Place in separate tablespace Use uniform extent sizes: Multiples of five blocks or MINIMUM EXTENT size for tablespace Consider NOLOGGING for large indexes INITRANS should generally be higher on indexes than on the corresponding tables.

14 12-14 Copyright © Oracle Corporation, 2001. All rights reserved.

15 12-15 Copyright © Oracle Corporation, 2001. All rights reserved. Creating Bitmap Indexes CREATE BITMAP INDEX orders_region_id_idx ON orders(region_id) PCTFREE 30 STORAGE(INITIAL 200K NEXT 200K PCTINCREASE 0 MAXEXTENTS 50) TABLESPACE indx;

16 12-16 Copyright © Oracle Corporation, 2001. All rights reserved.

17 12-17 Copyright © Oracle Corporation, 2001. All rights reserved.

18 12-18 Copyright © Oracle Corporation, 2001. All rights reserved. Changing Storage Parameters for Indexes ALTER INDEX employees_last_name_idx STORAGE(NEXT 400K MAXEXTENTS 100);

19 12-19 Copyright © Oracle Corporation, 2001. All rights reserved.

20 12-20 Copyright © Oracle Corporation, 2001. All rights reserved. Allocating and Deallocating Index Space ALTER INDEX orders_region_id_idx ALLOCATE EXTENT (SIZE 200K DATAFILE ‘/DISK6/indx01.dbf’); ALTER INDEX orders_id_idx DEALLOCATE UNUSED;

21 12-21 Copyright © Oracle Corporation, 2001. All rights reserved. Rebuilding Indexes Use the ALTER INDEX command to: Move an index to a different tablespace Improve space utilization by removing deleted entries ALTER INDEX orders_region_id_idx REBUILD TABLESPACE indx02;

22 12-22 Copyright © Oracle Corporation, 2001. All rights reserved.

23 12-23 Copyright © Oracle Corporation, 2001. All rights reserved. Rebuilding Indexes Online Indexes can be rebuilt with minimal table locking. Some restrictions still apply. ALTER INDEX orders_id_idx REBUILD ONLINE;

24 12-24 Copyright © Oracle Corporation, 2001. All rights reserved. Coalescing Indexes Before coalescing After coalescing ALTER INDEX orders_id_idx COALESCE;

25 12-25 Copyright © Oracle Corporation, 2001. All rights reserved. Checking Indexes and Their Validity ANALYZE INDEX orders_region_id_idx VALIDATE STRUCTURE; INDEX_STATS

26 12-26 Copyright © Oracle Corporation, 2001. All rights reserved.

27 12-27 Copyright © Oracle Corporation, 2001. All rights reserved. Dropping Indexes Drop and recreate an index before bulk loads. Drop indexes that are infrequently needed and build them when necessary. Drop and recreate invalid indexes. DROP INDEX hr.deptartments_name_idx;

28 12-28 Copyright © Oracle Corporation, 2001. All rights reserved.

29 12-29 Copyright © Oracle Corporation, 2001. All rights reserved. Identifying Unused Indexes To start monitoring the usage of an index: To stop monitoring the usage of an index: ALTER INDEX hr.dept_id_idx MONITORING USAGE ALTER INDEX hr.dept_id_idx NOMONITORING USAGE

30 12-30 Copyright © Oracle Corporation, 2001. All rights reserved. Obtaining Index Information Information about indexes can be obtained by querying the following views: DBA_INDEXES : Provides information on the indexes DBA_IND_COLUMNS : Provides information on the columns indexed V$OBJECT_USAGE : Provides information on the usage of an index

31 12-31 Copyright © Oracle Corporation, 2001. All rights reserved. Summary In this lesson, you should have learned how to: Create different types of indexes Reorganize indexes Drop indexes Get index information from the data dictionary Begin and end monitoring usage of indexes

32 12-32 Copyright © Oracle Corporation, 2001. All rights reserved. Practice 12 Overview This practice covers the following topics: Creating an index on columns of a table Moving the index to another tablespace Dropping an index Obtain index information

33 12-33 Copyright © Oracle Corporation, 2001. All rights reserved.

34 12-34 Copyright © Oracle Corporation, 2001. All rights reserved.


Download ppt "12 Copyright © Oracle Corporation, 2001. All rights reserved. Managing Indexes."

Similar presentations


Ads by Google