just-in-time indexes
DESCRIPTION
Just-in-Time Indexes. Understanding Indexes in KB_SQL March 2001. March 2001. Learning Objectives. What options do I have to improve query performance? The answer is…indexes. Review indexing strategies Introduce just-in-time indexes Discuss advantages and caveats. Improve Performance. - PowerPoint PPT PresentationTRANSCRIPT
Just-in-Time Indexes
Understanding Indexes in KB_SQL
March 2001
March 2001
Learning Objectives
• What options do I have to improve query performance?
The answer is…indexes.
• Review indexing strategies
• Introduce just-in-time indexes
• Discuss advantages and caveats
Improve Performance
Why does my query run so slow?
Query Results
Show Plan/Stats: Query
Run query with Show Plan and Show Stats
Show Plan: Results
Note: No index being used
Show Stats: Results
Note: Selecting 9 of 25000 rows searched
Show All Plans: Query
Run query with SHOW_ALL_PLANS to see if index is available
Show All Plans: Results
Note: No indexes available
Index Exists
Define Index to KB_SQL
Add BY_NAME index in KB_SQL
New Show Plan
Note: BY_NAME index is used, cost is reduced
New Show Stats
Note: Selecting 9 of 9 rows searched
New Show All Plans
Note: BY_NAME index available
How do we improve performance if we don’t have sufficient indexes?
• What are the options?– Create supplemental table(s)– Build index– Create just-in-time index
• When will it be populated?
• How often should it be updated?
• Advantages and caveats?
Create Supplemental Tables
• Create new table
• Join to “base” table
Build the Index
• Benefits– Queries only look at key data which results
in faster searches
• Caveats– Time– Resources– Additional globals to maintain
What if there is no index?
What if there is no index? (cont)
What if there is no index? (cont)
Just-in-Time Indexes
• When will the index be populated?
• How often should the index be updated?
Just-in-Time Indexes: Advantages and Caveats
• Advantages over traditional indexes– Add only the indexes that the user
demands– Reduce wasted effort to build indexes that
won’t be used• Caveats
– Does not provide up-to-the-minute data accuracy
– 2 or more queries to realize benefit
Build the Just-in-Time Index
Define the Index to KB_SQL
New Show All Plans
Note: Two indexes available; BY_SUPPLIER is accepted based on constraint
New Show Plan
Note: BY_SUPPLIER index is used
New Show Stats
Note: Selecting 4 of 4 rows searched
Summary
• Discussed options available to help improve query performance
The answer is…indexes.
• Reviewed indexing strategies
• Introduced just-in-time indexes
• Discussed advantages and caveats