Expert Indexing in Oracle Database 11g

Maximum Performance for your Database

By Darl Kuhn , Sam Alapati , Bill Padfield

Expert Indexing in Oracle Database 11g is a practical guide to indices and their uses, helping you master the most fundamental performance optimization structure in Oracle Database.

Full Description

  • ISBN13: 978-1-4302-3735-8
  • 272 Pages
  • User Level: Intermediate to Advanced
  • Publication Date: January 9, 2012
  • Available eBook Formats: EPUB, MOBI, PDF
  • Print Book Price: $49.99
  • eBook Price: $34.99
Buy eBook Buy Print Book Add to Wishlist

Related Titles

Full Description

Expert Indexing in Oracle Database 11g is about the one database structure at the heart of almost all performance concerns: the index. Database system performance is one of the top concerns in information technology today. Administrators struggle to keep up with the explosion of access and activity driven by the proliferation of computing into everything from phones to tablets to PCs in our increasingly connected world. At the heart of any good-performing database lies a sound indexing strategy that makes appropriate use of indexing, and especially of the vendor-specific indexing features on offer.

Few databases fully exploit the wealth of data access mechanisms provided by Oracle. Expert Indexing in Oracle Database 11g helps by bringing together information indexing and how to use it into one, convenient and blissfully short volume that you can read quickly and have at your fingertips for reference. Learn the different types of indices available and when each is best applied. Recognize when queries aren’t using indices as you intend. Manage your indexing for maximum performance. Let Expert Indexing in Oracle Database 11g be your guide to deep mastery of the most fundamental performance optimization structure in Oracle Database.

  • Explains how indices work, how they help, and how they hinder
  • Demystifies the various index choices
  • Describes the database administration chores associated with indices

What you’ll learn

  • Create an overall indexing strategy to guide your decisions
  • Choose the correct indexing mechanisms for your applications
  • Manage and maintain indices to avoid degradation and preserve efficiency
  • Take better advantage of underused index types such as index-organized tables
  • Choose the appropriate columns to index, with confidence
  • Blend partitioning and materialized views into your indexing strategy

Who this book is for

Expert Indexing in Oracle Database 11g is for all levels of database administrators and application developers who are struggling with the database performance and scalability challenge. Any database administrator involved with indexing, which is any database administrator period, will appreciate the wealth of advice packed into this gem of a book.

Table of Contents

Table of Contents

  1. Introduction to Oracle Indexes
  2. B-Tree Indexes
  3. Bitmap and Bitmap-join Indexes
  4. Index-organized Tables
  5. Specialized Indexes
  6. Partitioned Indexes
  7. Index Tuning
  8. Index Maintenance
  9. Oracle Tuning Advisor
  10. Oracle Access Advisor
  11. Indexes and Table Clustering
Source Code/Downloads

Downloads are available to accompany this book.

Your operating system can likely extract zipped downloads automatically, but you may require software such as WinZip for PC, or StuffIt on a Mac.

Errata

Please Login to submit errata.

On page 112:

Toward the bottom of the page:

Currently:
alter inde myidx1 rebuild norverse;

Should be:
alter index myidx1 rebuild noreverse;

On page 120:

On the top line:

Currently: ...then enabled your primary key...
Should be: ...then disable your primary key...

On page 176:

There 2 distinct errors:
p1_i_emp_ename and p2_i_emp_ename

NOT:
p1-_i_empname and p2_i_empname

Therefore, error 1 is:
Currently: ...two partitions: p1-_i_empname and p2_i_empname. However...
Should be: ...two partitions: p1_i_emp_ename and p2_i_emp_ename. However...


And error 2 is:
Currently: ...creates the second partition (p2_i_empname) as unusable...
Should be: ...creates the first partition (p1_i_emp_ename) as unusable...

On page 177:
There is an extra comma in the query at the top of the page.

Currently, you have:

SQL> select p.partition_name, p.status as "part_status",
2 p.segment_created as "seg_created",
3 from user_ind_partitions p, user_segments s
4 where s.segment_name = 'I_EMP_ENAME';

It should be:

SQL> select p.partition_name, p.status as "part_status",
2 p.segment_created as "seg_created"
3 from user_ind_partitions p, user_segments s
4 where s.segment_name = 'I_EMP_ENAME';

========

Just about halfway down the page, the query is inaccurate. The owner (HR) is not contained in the segment_name field.

Currently, you have:

SQL> select segment_name,bytes from dba_segments
where segment_name in ('HR.I_EMP_ENAME','HR.EMP_EMAIL_UK');

It should be:

SQL> select segment_name,bytes from dba_segments
where segment_name in ('I_EMP_ENAME','EMP_EMAIL_UK');

=====

It should be mentioned that p.segment_created is only valid for 11g R2 as it does not exist in 11g R1

On page 198:

The statement near the bottom of the page is incorrect:

Currently:
SQL> create index a on x(y)
nologging
parallel 12
compress 2;

Should be:
SQL> create index a on x(y)
nologging
parallel 12
compress 1;

On page 966:

The book says : 'for example, every Friday from 10:00 a.m. to 12:00 p.m. during the year 2008'.

but the scripts
"SQL> begin
dbms_workload_repository.create_baseline_template(
day_of_week => 'Friday',
hour_in_day => 15,
duration => 4,
expiration => 30,
start_time => '2008-10-01 22:00:00 PST'.
end_time => '2008-12-31 22:00:00 PST',
baseline_name_prefix => 'Friday_Baseline',
template_name => Friday_Template',
dbid => 1234567899);
end;
SQL> /"

means to create a repeate baseline template every Friday from 3:00pm to 7:00pm during 2008-10-01 to 2008-12-31