Get in Touch

Course Outline

Application Tuning Methodology

Database Architecture and Instance

  • Server processes
  • Memory structures (SGA, PGA)
  • Parsing and shared cursors
  • Data files, log files, and parameter files

Analysis of the Command Execution Plan

  • Hypothetical plan (EXPLAIN PLAN, SQLPlus AutoTrace, TKPROF)
  • Actual execution plan (V$SQL_PLAN, TKPROF, AWR)

Monitoring Performance and Identifying Process Bottlenecks

  • Monitoring the current instance status via system dictionary views
  • Monitoring historical data in dictionaries
  • Tracking application performance (SQLTrace, TKProf, TRESESS)

The Optimization Process

  • Properties of cost-based optimization and regulation
  • Decision-making for optimization

Controlling the Cost-Based Optimizer by:

  • Session parameters and instance settings
  • Hints
  • Query plan patterns

Statistics and Histograms

  • Impact of statistics and histograms on performance
  • Methods for collecting statistics and histograms
  • Strategies for estimating statistics
  • Statistics management: locking, copying, editing, automation of collection, and monitoring changes
  • Dynamic data sampling (temporary tables, complex predicates)
  • Multi-column statistics based on expressions
  • System statistics

Logical and Physical Structure of the Database

  • Table spaces
  • Segments
  • Extents
  • Blocks

Data Storage Methods

  • Physical aspects of tables
  • Temporary tables
  • Index tables
  • External tables
  • Partitioned tables (range, list, hash, mixed)
  • Physical reorganization of tables

Materialized Views and the QUERY REWRITE Mechanism

Data Indexing Methods

  • Building B-TREE indexes
  • Index properties
  • Index types: unique, multi-column, function-based, reverse
  • Compressed indexes
  • Rebuilding and merging indexes
  • Virtual indexes
  • Private and public indexes
  • Bitmap indexes and join operations

Case Study - Full Data Scan

  • Impact of table location and block reads on performance
  • Conventional versus direct path data loading
  • Order of predicates

Case Study - Accessing Data via Index

  • Index read methods (UNIQUE SCAN, RANGE SCAN, FULL SCAN, FAST FULL SCAN, MIN/MAX SCAN)
  • Using function-based indexes
  • Index selectivity (Clustering Factor)
  • Multi-column indexes and SKIP SCAN
  • Handling NULLs with indexes
  • Index-Organized Tables (IOT)
  • Impact of indexes on DML operations

Case Study - Sorting

  • Sorting in memory
  • Index-based sorting
  • Linguistic sorting
  • Effect of data distribution on sorting (Clustering Factor)

Case Study - Joins and Subqueries

  • Join methods: MERGE, HASH, NESTED LOOP
  • Joins in OLTP and OLAP systems
  • Join order and switching
  • Outer Joins
  • Anti-join
  • Semi-joins
  • Simple subqueries
  • Correlated subqueries
  • Views and the WITH clause

Other Cost-Based Optimizer Operations

  • Buffer Sort
  • IN-LIST iteration
  • VIEW operation
  • FILTER
  • Count Stop Key
  • Result Cache

Distributed Queries

  • Reading query plans for use with database links
  • Selecting the driving table

Parallel Processing

Requirements

  • Proficiency in basic SQL and knowledge of the Oracle database environment (preferably having completed training such as 'Native SQL for Programmers - Workshops' for Oracle 11g)
  • Practical experience working with Oracle
 28 Hours

Number of participants


Price per participant

Testimonials (2)

Upcoming Courses

Related Categories