Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

34
Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki Lauri Pietarinen Relational Consulting Session Code: F04 Nov 09, 2010 8:30 – 9:30 AM | Platform: z/OS, LUW

description

Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki. Lauri Pietarinen Relational Consulting Session Code: F04 Nov 09, 2010 8:30 – 9:30 AM | Platform: z/OS, LUW. Q-Quick U-Upper B-Bound E -Estimate - PowerPoint PPT Presentation

Transcript of Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Page 1: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Proactive Index Design using QUBECourtesy of Tapio Lahdenmäki

Lauri PietarinenRelational Consulting

Session Code: F04Nov 09, 2010 8:30 – 9:30 AM | Platform: z/OS, LUW

Page 2: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

2

Q - Quick U - Upper B - Bound E - Estimate

A simple formula for estimating CPU and elapsed time for queries,created by Tapio Lahdenmäki and others at IBM-Finland

Page 3: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Basic Access Methods

Page 4: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Simple Anatomy of the B-Tree Index

Page 5: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Recommended Mental Image

Page 6: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Case Study: Request Tracking

Page 7: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Common Transaction

Page 8: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Which One is Faster?

Page 9: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Sequential Read in 2010

Page 10: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Random Read in 2010

Page 11: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Random Read from Disk Drive

Page 12: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Disk Drives – the Bottleneck

Page 13: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Quick Upper Bound Estimate (QUBE)

Page 14: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Alternative 1

Page 15: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Alternative 2A

Page 16: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Alternative 2B

Page 17: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

The Basic Question

Page 18: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Semi-Fat Index

Page 19: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

QUBE for Semi-Fat Index – Your Turn!

Page 20: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Still Too Long – What Next?

Page 21: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

When Do Touches Take Place?

Page 22: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

No Sort, 20 Fetches

Page 23: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Worst-Input Estimates

Page 24: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Fat Index with Sort

Page 25: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Worst-Input Estimates, with Fat Index

Page 26: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Too Expensive?

Page 27: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

The Cost of Adding an Index

Page 28: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

The Cost of Adding an Index Column

Page 29: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

So, Too Expensive?

Page 30: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Obsolete and Relevant Guidelines

Page 31: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Index BO was not Adequate for this Select

Page 32: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

QUBE for Semi-Fat Index -- Solution

Page 33: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

SummaryQube is a way

of thinking about indexes

It can be used to prevent

performance problems

It can (and should) be

used in conjunction with other

tools

It can be used to understand and analyze performance

problems

Page 34: Proactive Index Design using QUBE Courtesy of Tapio Lahdenmäki

Lauri PietarinenRelational [email protected] Index Design using QUBE