Oracle SQL Performance Tuning — A 2-Day Course
Synopsis
This course introduces the delegate to the main concepts of Oracle SQL performance tuning. It is designed to give delegates practical experience in analyzing and tuning the performance of SQL. This course is suitable for users of Oracle Database 10g and Oracle Database 11g.
Course Objectives
The delegate will practise:
- Tuning Database Applications for Optimal Performance
- Managing Statistics
- Creating and Using Indexes
- Structuring SQL Statements for Performance
- Using the SQL Optimizers
- Examining the Execution Plan of a SQL Statement using EXPLAIN PLAN
- Examining the Efficiency of SQL Statements using SQL Trace and Autotrace
- Using Hints to Influence Execution Plan
- Identifying Unused Indexes
Suitable For
- This course is designed for SQL programmers, application developers/designers and technical support professionals who are required to tune the performance of an Oracle application running under Oracle 9i, 10g or 11g.
Prerequisites
A working knowledge of SQL is required. This can be obtained by attendance on the pre-requisite course:
Publicly scheduled dates, locations, and prices
London — £725 (+VAT)
- 29–30 Mar 2010
- 4–5 May 2010
- 12–13 Jul 2010
- 6–7 Sep 2010
- 11–12 Nov 2010
Outline Course Contents
Introduction to Oracle Performance Tuning
- Tuning Overview
- Oracle Tuning Process
- Planning a Routine Monitoring Regime
- Setting Suitable Goals
- Tips for Avoiding Problematic Queries
Tools for Evaluating SQL Statements
- Overview of SQL Statement Tuning
- Tools to Assist in SQL Tuning
- Explain Plan
- Autotrace
- SQL Trace
- The tkprof Program
- Interpreting SQL Trace
The Optimizer
- SQL Optimizer
- OPTIMIZER_MODE Initialization Parameter
- Rule Based Optimizer
- Cost Based Optimizer
- The Analyze Command
- Managing Statistics with DBMS_STATS
- Automatic Statistics Gathering
Sorts
- How Oracle Processes Sorts
- Temporary Disk Space Assignment
- SQL Operations that Use Sorts
Indexes
- Index Overview
- B*Tree Indexes
- Access Paths with Indexes
- Index Scans
- Conditions That Stop Indexes Being Used
- Parameters Affecting Optimizer Index Choice
Advanced Indexes
- Bitmap Indexes
- Key Compressed Indexes
- Index Organized Tables
- Function Based Indexes
- Descending Indexes
- Invisible Indexes
Joins
- Joining Tables
- Nested Loops Join
- Merge Join
- Cluster Join
- Hash Join
- Anti Join and Semi Join
- Outer Joins
- Star Join
Sequences and Views
- Sequence Caching
- Views
- View Merging
- Inline Views
Using Hints
- Using Hints to Influence Execution Plan
- Optimization Mode and Goals
- Access Methods
- Query Transformations
- Join Orders
- Join Operations
- Hint Examples
Miscellaneous
- Syntax Considerations
- Array Size
- hared Pool
- Intelligent Cursor Sharing
- Virtual Columns
- Result Caching
- Some PL/SQL Issues
