Get in Touch

Course Outline

Application Tuning Methodology

Database and Instance Architecture

  • Server processes
  • Memory structures (SGA, PGA)
  • Cursor parsing and sharing
  • Data files, log files, and parameter files

Execution Plan Analysis

  • Estimated plan (EXPLAIN PLAN, SQL*Plus Autotrace)
  • Actual execution plan (V$SQL_PLAN, XPlan, AWR)

Monitoring Performance and Identifying Process Bottlenecks

  • Monitoring current instance status via system dictionary views
  • Monitoring historical data
  • Application tracking (SQL*Trace, TkProf, TreSess)

The Optimisation Process

  • Characteristics of cost-based optimisation and regulation
  • Determining the optimisation strategy

Controlling the Cost-Based Optimizer by:

  • Session and instance parameters
  • Hints
  • Query plan patterns

Statistics and Histograms

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

Logical and Physical Structure of the Database

  • Tablespaces
  • Segments
  • Extents
  • Blocks

Data Storage Methods

  • Physical aspects of tables
  • Temporary tables
  • Index-organised tables
  • External tables
  • Partitioned tables (range, list, hash, composite)
  • Physical reorganisation of tables

Materialised Views and the QUERY REWRITE Mechanism

Data Indexing Methods

  • Building B-tree indexes
  • Index properties
  • Index types: unique, multi-column, function-based, reverse
  • Index compression
  • Index rebuilding and merging
  • Virtual indexes
  • Local and global indexes
  • Bitmap indexes and joins

Case Study - Full Table Scans

  • The impact of data placement at the table and block levels on read performance
  • Data loading: conventional and direct path
  • Predicate order

Case Study - Data Access via Indexes

  • 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
  • NULL values and indexes
  • Index-organised tables (IOT)
  • Impact of indexes on DML operations

Case Study - Sorting

  • Sort memory
  • Index sort
  • Linguistic sort
  • The effect of data entropy on sorting (Clustering Factor)

Case Study - Joins and Subqueries

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

Other Cost-Based Optimizer Operations

  • Buffer Sort
  • INLIST ITERATOR
  • VIEW
  • FILTER
  • COUNT STOPKEY
  • Result Cache

Distributed Queries

  • Reading query plans for DB links
  • Selecting the driving table

Parallel Processing

Requirements

  • Proficiency in SQL basics and knowledge of the Oracle database environment (ideally, having completed the 'Native SQL for Programmers - Workshops' training on Oracle 11g)
  • Practical experience working with Oracle
 28 Hours

Number of participants


Price per participant

Testimonials (2)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories