Interested in bringing a class to you? Onsite training
Overview
| Course code | 3V960 | Skill level | Intermediate |
|---|---|---|---|
| Duration | 5.0 days | Delivery type | Instructor Led - Online Training
(Hands-on labs) |
| Course type | Public or Private on-site | ||
| Public price | USD $3,250.00 plus tax | ||
This course is designed to teach you how to prevent application performance problems and to improve the performance of existing applications.
View this course in other countries
Training Paths that reference this course are:
Special note
This is an online course. Please do not make travel arrangements for this course.
After you receive confirmation that you are enrolled, you will be sent further instructions to access audio, video and remote labs.
IBM Education Advantage Program Eligibility:
- Yes - IBM Education Pack - online account
Audience
This is an intermediate course for DB2 for z/OS application developers, DB2 for z/OS DBAs and anyone else with a responsibility for application performance and tuning in a DB2 for z/OS environment.
Skills taught
- Design better indexes
- Determine how to live with the optimizer (avoid pitfalls, help when necessary)
- Avoid locking problems
- Use accounting traces to find significant performance problems in an operational application
- Describe access path stability
Course outline
Application performance issues and management methods
- Describe common DB2 application performance problems
- Evaluate different approaches for detecting the problems
- Describe different solutions
Towards better indexes
- Detect inadequate indexing with VQUBE as soon as program specifications are completed
- Design the best possible index for a single-table SELECT
- Evaluate the cost of an index
Towards better tables
- Evaluate clustering alternatives
- Consider the tradeoffs in two kinds of denormalization
- Describe why tables for optional attributes are often not good for performance
Learning to live with optimizer
- Describe the limitations related to dangerous predicates
- Identify situations when the optimizer needs help with filter factor estimates
- Avoid the pitfalls with joins, subqueries, unions, except, and intersect
Unpredictable transactions
- Design good cursors and indexes for a transaction with optional input fields
- Describe the problems the index designer and the optimizer face with star joins
- Describe MQTs and situations where they might improve application performance
Massive batch
- Detect early the eventual performance problems with massive batch jobs
- Make batch jobs run faster
CPU time estimates
- Predict CPU time with a rough formula
Avoiding locking problems
- Avoid lock durations that are too long or locks that are too strong
- Prevent wrong results caused by lock durations that are too short or locks that are too weak
Monitoring application performance
- Describe access path stability
- Identify how traces work
- Define what an accounting trace is
- List the most important counters in an accounting trace
- Compare VQUBE and accounting traces
- Analyze an accounting trace
- Describe the most useful accounting reports
Agenda
Day 1
- Welcome
- Application performance issues and management methods
- DB2 index structure and basic access paths
- Index design - part one
Day 2
- Index design - part one (continued)
- Lab 1 (Improve indexes for customer / order application)
- Lab 1 review
- Index design - part two
- Machine exercise 1
- Machine exercise 1 review
- Index design - part two (continued)
- Lab 2 (Poorly performing application already in production)
- Lab 2 review
- Advanced access paths
Day 3
- Lab 3 (Multiple index access)
- Lab 3 review
- Towards better tables
- Dangerous predicates
- Machine exercise 2
- Machine exercise 2 review
- Dangerous predicates (continued)
- Lab 4 (Browsing application)
- Lab 4 review
- Optimizer and filter factors
- Machine exercise 3
- Machine exercise 3 review
- Join issues
Day 4
- Join issues (continued)
- Lab 5 (Joins)
- Lab 5 review
- Subquery issues
- Lab 6 (Different implementations of the same transaction)
- Lab 6 review
- UNION, EXCEPT, and INTERSECT
- Lab 7 (Union)
- Lab 7 review
- Machine exercise 4
- Machine exercise 4 review
- Unpredictable transactions and MQTs
- Machine exercise 5
- Machine exercise 5 review
- Massive batch
- Lab 8 (Improve batch performance)
Day 5
- Lab 8 Review
- Massive delete
- CPU time estimates
- Avoiding locking problems
- Monitoring application performance
Remarks
This is an Instructor Led On Line course. Please do not make travel arrangements for this course. Your system should have a microphone and speakers for interfacing with the instructor and other students. After you receive confirmation that you are enrolled, you will be sent further instructions to access audio, video and remote labs. All Instructor Led On Line US courses start at 9:00 am Central time. Materials are not guaranteed to be delivered to student, if registration is received three business days before class start date.
