Description

Book Synopsis
Improve the performance of relational databases with indexes designed for today''s hardware

Over the last few years, hardware and software have advanced beyond all recognition, so it''s hardly surprising that relational database performance now receives much less attention. Unfortunately, the reality is that the improved hardware hasn''t kept pace with the ever-increasing quantity of data processed today. Although disk packing densities have increased enormously, making storage costs extremely low and sequential read very fast, random reads are still painfully slow. Many of the old design recommendations are therefore no longer valid-the optimal point of indexing has come a long way. Consequently many of the old problems haven''t actually gone away-they have simply changed their appearance.

This book provides an easy but effective approach to the design of indexes and tables. Using lots of examples and case studies, the authors describe how the DB2, Oracle, and SQ

Trade Review
"I recommend this book to all those who have anything to do with database performance. It is a must-read for all database administrations, database designers, performance-tuning specialists, and application programmers…" (Computing Reviews.com, November 20, 2005)

Table of Contents
Preface.

1. Introduction.

Another Book About SQL Performance!

Inadequate Indexing.

Myths and Misconceptions.

2. Table and Index Organization.

Introduction.

Index Rows.

Index Structure.

Table Row.

Buffer Pools and Disk I/Os.

Hardware Specifics.

DBMS Specifics.

3. SQL Processing.

Introduction.

Predicates.

Optimizers and Access Paths.

Filter Factors.

Materializing the Result Rows.

Exercises.

4. Deriving the Ideal Index for a SELECT.

Introduction.

Basic Assumptions for Disk and CPU Times.

Inadequate Index.

Three-Star Index—The Ideal Index for a SELECT.

Algorithm to Derive the Best Index for a SELECT.

Ideal Index for Every SELECT?

Cost of an Additional Index.

Recommendation.

Exercises.

5. Proactive Index Design.

Detection of Inadequate Indexing.

Basic Question (BQ).

Quick Upper-Bound Estimate (QUBD).

Cheapest Adequate Index or Best Possible Index: Example 1.

Cheapest Adequate Index or Best Possible Index: Example 2.

When to Use the QUBE.

6. Factors Affecting the Index Design Process.

I/O Time Estimate Verification.

Multiple Thin Index Slices.

Difficult Predicates.

Filter Factor Pitfall.

Filter Factor Pitfall Example.

Exercises.

7. Reactive Index Design.

Introduction.

EXPLAIN Describes the Selected Access Paths.

Monitoring Reveals the Reality.

LRT-Level Exception Monitoring.

Call-Level Exception Monitoring.

DBMS-Specific Monitoring Issues.

Exercises.

8. Indexing for Table Joins.

Introduction.

Two Simple Joins.

Impact of Table Access Order on Index Design.

Basic Joint Question (BJQ).

Predicting the Table Access Order.

Merge Scan Joins and Hash Joins.

Nested-Loop Joins Versus MS/HJ and Ideal Indexes.

Joining More Than Two Tables.

Why Joins Often Perform Poorly.

Designing Indexes for Subqueries.

Designing Indexes for Unions.

Table Design Considerations.

Exercises.

9. Star Join Considerations.

Introduction.

Indexes on Dimension tables.

Huge Impact of the Table Access Order.

Indexes on Fact Tables.

Summary Tables.

10. Multiple Index Access.

Introduction.

Index ANDing.

Index ORing.

Index Join.

Exercises.

11. Indexes and Reorganization.

Physical Structure of a B-Tree Index.

How the DBMS Finds an Index Row.

What Happens When a Row IS Inserted?

Are Leaf Page Splits Serious?

When Should an Index Be reorganized?

Volatile Index Columns.

Long Index Rows.

Example: Order-Sensitive Batch Job.

Table Rows Stored in Leaf Pages.

Cost of Index Reorganization.

Split Monitoring.

Summary.

12. DBMS-Specific Indexing Restrictions.

Introduction.

Number of Index Columns,

Total Length of the Index Columns.

Variable-Length Columns.

Number of Indexes per Table.

Maximum Index Size.

Index Locking.

Index Row Suppression.

DBMS Index Creation Examples.

13. DBMS-Specific Indexing Options.

Introduction.

Index Row Suppression.

Additional Index Columns After the Index Key.

Constraints to Enforce Uniqueness.

DBMS Able to Read an Index in Both Directions.

Index Key Truncation.

Function-Based Indexes.

Index Skip Scan.

Block Indexes.

Data-Partitioned Secondary Indexes.

Exercises.

14. Optimizers Are Not Perfect.

Introduction.

Optimizers Do Not Always See the Best Alternative.

Optimizers’ Cost Estimates May Be Very Wrong.

Cost Estimate Formulas.

Do Optimizer Problems Affect Index Design?

Exercises.

15. Additional Estimation Considerations.

Assumptions Behind the QUBE Formula.

Nonleaf Index Pages in Memory.

When the Actual Response Time Can Be Much Shorter Than the QUBE.

Estimating CPU Time (CQUBE).

CPU Estimation Examples.

16. Organizing the Index Design Process.

Introduction.

Computer-Assisted Index Design.

Nine Steps Toward Excellent Indexes.

References.

Glossary.

Index.

Relational Database Index Design and the

Product form

£99.86

Includes FREE delivery

RRP £110.95 – you save £11.09 (9%)

Order before 4pm today for delivery by Mon 19 Jan 2026.

A Hardback by Tapio Lahdenmaki, Mike Leach

15 in stock


    View other formats and editions of Relational Database Index Design and the by Tapio Lahdenmaki

    Publisher: John Wiley & Sons Inc
    Publication Date: 16/09/2005
    ISBN13: 9780471719991, 978-0471719991
    ISBN10: 0471719994

    Description

    Book Synopsis
    Improve the performance of relational databases with indexes designed for today''s hardware

    Over the last few years, hardware and software have advanced beyond all recognition, so it''s hardly surprising that relational database performance now receives much less attention. Unfortunately, the reality is that the improved hardware hasn''t kept pace with the ever-increasing quantity of data processed today. Although disk packing densities have increased enormously, making storage costs extremely low and sequential read very fast, random reads are still painfully slow. Many of the old design recommendations are therefore no longer valid-the optimal point of indexing has come a long way. Consequently many of the old problems haven''t actually gone away-they have simply changed their appearance.

    This book provides an easy but effective approach to the design of indexes and tables. Using lots of examples and case studies, the authors describe how the DB2, Oracle, and SQ

    Trade Review
    "I recommend this book to all those who have anything to do with database performance. It is a must-read for all database administrations, database designers, performance-tuning specialists, and application programmers…" (Computing Reviews.com, November 20, 2005)

    Table of Contents
    Preface.

    1. Introduction.

    Another Book About SQL Performance!

    Inadequate Indexing.

    Myths and Misconceptions.

    2. Table and Index Organization.

    Introduction.

    Index Rows.

    Index Structure.

    Table Row.

    Buffer Pools and Disk I/Os.

    Hardware Specifics.

    DBMS Specifics.

    3. SQL Processing.

    Introduction.

    Predicates.

    Optimizers and Access Paths.

    Filter Factors.

    Materializing the Result Rows.

    Exercises.

    4. Deriving the Ideal Index for a SELECT.

    Introduction.

    Basic Assumptions for Disk and CPU Times.

    Inadequate Index.

    Three-Star Index—The Ideal Index for a SELECT.

    Algorithm to Derive the Best Index for a SELECT.

    Ideal Index for Every SELECT?

    Cost of an Additional Index.

    Recommendation.

    Exercises.

    5. Proactive Index Design.

    Detection of Inadequate Indexing.

    Basic Question (BQ).

    Quick Upper-Bound Estimate (QUBD).

    Cheapest Adequate Index or Best Possible Index: Example 1.

    Cheapest Adequate Index or Best Possible Index: Example 2.

    When to Use the QUBE.

    6. Factors Affecting the Index Design Process.

    I/O Time Estimate Verification.

    Multiple Thin Index Slices.

    Difficult Predicates.

    Filter Factor Pitfall.

    Filter Factor Pitfall Example.

    Exercises.

    7. Reactive Index Design.

    Introduction.

    EXPLAIN Describes the Selected Access Paths.

    Monitoring Reveals the Reality.

    LRT-Level Exception Monitoring.

    Call-Level Exception Monitoring.

    DBMS-Specific Monitoring Issues.

    Exercises.

    8. Indexing for Table Joins.

    Introduction.

    Two Simple Joins.

    Impact of Table Access Order on Index Design.

    Basic Joint Question (BJQ).

    Predicting the Table Access Order.

    Merge Scan Joins and Hash Joins.

    Nested-Loop Joins Versus MS/HJ and Ideal Indexes.

    Joining More Than Two Tables.

    Why Joins Often Perform Poorly.

    Designing Indexes for Subqueries.

    Designing Indexes for Unions.

    Table Design Considerations.

    Exercises.

    9. Star Join Considerations.

    Introduction.

    Indexes on Dimension tables.

    Huge Impact of the Table Access Order.

    Indexes on Fact Tables.

    Summary Tables.

    10. Multiple Index Access.

    Introduction.

    Index ANDing.

    Index ORing.

    Index Join.

    Exercises.

    11. Indexes and Reorganization.

    Physical Structure of a B-Tree Index.

    How the DBMS Finds an Index Row.

    What Happens When a Row IS Inserted?

    Are Leaf Page Splits Serious?

    When Should an Index Be reorganized?

    Volatile Index Columns.

    Long Index Rows.

    Example: Order-Sensitive Batch Job.

    Table Rows Stored in Leaf Pages.

    Cost of Index Reorganization.

    Split Monitoring.

    Summary.

    12. DBMS-Specific Indexing Restrictions.

    Introduction.

    Number of Index Columns,

    Total Length of the Index Columns.

    Variable-Length Columns.

    Number of Indexes per Table.

    Maximum Index Size.

    Index Locking.

    Index Row Suppression.

    DBMS Index Creation Examples.

    13. DBMS-Specific Indexing Options.

    Introduction.

    Index Row Suppression.

    Additional Index Columns After the Index Key.

    Constraints to Enforce Uniqueness.

    DBMS Able to Read an Index in Both Directions.

    Index Key Truncation.

    Function-Based Indexes.

    Index Skip Scan.

    Block Indexes.

    Data-Partitioned Secondary Indexes.

    Exercises.

    14. Optimizers Are Not Perfect.

    Introduction.

    Optimizers Do Not Always See the Best Alternative.

    Optimizers’ Cost Estimates May Be Very Wrong.

    Cost Estimate Formulas.

    Do Optimizer Problems Affect Index Design?

    Exercises.

    15. Additional Estimation Considerations.

    Assumptions Behind the QUBE Formula.

    Nonleaf Index Pages in Memory.

    When the Actual Response Time Can Be Much Shorter Than the QUBE.

    Estimating CPU Time (CQUBE).

    CPU Estimation Examples.

    16. Organizing the Index Design Process.

    Introduction.

    Computer-Assisted Index Design.

    Nine Steps Toward Excellent Indexes.

    References.

    Glossary.

    Index.

    Recently viewed products

    © 2026 Book Curl

      • American Express
      • Apple Pay
      • Diners Club
      • Discover
      • Google Pay
      • Maestro
      • Mastercard
      • PayPal
      • Shop Pay
      • Union Pay
      • Visa

      Login

      Forgot your password?

      Don't have an account yet?
      Create account