100% found this document useful (2 votes)
387 views10 pages

Oracle Performance Tuning Training

Uploaded by

helk03
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
387 views10 pages

Oracle Performance Tuning Training

Uploaded by

helk03
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

24/03/2021 Oracle Performance Tuning Training

Search BC Oracle Sites Oracle Performance Tuning Training


© 2007-2016 by Burleson Corporation
Search

Home
This tuning course is taught at your Company site
E-mail Us
with up to 20 students.
Oracle Articles
New Oracle Articles Click here for on-site course prices

Optional supplemental mentoring


Oracle Training
Oracle Tips
Oracle Forum
Class Catalog
* Understand the common causes This intensive Oracle tuning training class is designed to provide an in-depth
of performance problems. overview of Oracle internal structures and show how to tune Oracle’s internal
structures for maximum high performance.
Remote DBA
* See how data caching improves
Oracle Tuning access speed. This is not your run-of-the-mill Oracle tuning class. Unlike the boilerplate
Emergency 911 Oracle tuning courses that deliver obsolete and low-impact tuning
RAC Support * Learn secrets for optimizing techniques, this course shows real-world techniques that can cut overall
SQL. response time by more than 50%.
Apps Support
Analysis * Use Oracle secrets to optimize Donald Burleson’s landmark book “Oracle Tuning: The Definitive
Design the SGA. Reference” has been a driving force in the advancement of Oracle tuning.
Implementation Don's latest Oracle Press books, "Oracle High-performance Tuning with
* See how to quickly locate and STATSPACK" and "Oracle High-performance SQL Tuning" set the standard
Oracle Support
relieve database bottlenecks. for the tuning of Oracle databases.

* Understand proven techniques Don Burleson remains one of the world’s leading Oracle authors, with 34
for Oracle health checks. books and more than 100 database tuning articles in many magazines,
SQL Tuning including Oracle Magazine.
Security * See how Oracle data repository
Oracle UNIX allows for proactive database While the Oracle tuning course is topical in nature, the tuning class
tuning. emphasizes the central theme of database monitoring and the proper use of
Oracle Linux
alert mechanisms. The course shows the attendees how to use the Oracle
Monitoring STATSPACK utility to monitor virtually every aspect of their Oracle
Remote support database.
Remote plans
Remote services
Application Server
Applications
Oracle Forms
Oracle Tuning
The Definitive Reference
Oracle Portal
App Upgrades Donald K. Burleson
SQL Server
Oracle Concepts
ISBN: 0-9744486-2-1
Software Support
Remote Support
Development
Implementation

This course is designed for the working Oracle professional and the amount
Consulting Staff
of previous experience with Oracle is incidental.
Consulting Prices
Help Wanted! Previous experience with relational database management and SQL is
helpful, but this class is self-contained and has no formal prerequisites.

www.dba-oracle.com/cou_perftune.htm 1/10
24/03/2021 Oracle Performance Tuning Training
This course was designed by Donald K. Burleson, an acknowledged leader in Oracle database administration.
Author of more than 30 database books, Burleson was chosen by Oracle Press to write five authorized editions,
Oracle Posters including Oracle High-Performance SQL tuning. Burleson Corporation instructors offer decades of real world DBA
Oracle Books experience in Oracle features, and they will share their secrets in this intense Oracle tuning training.
Oracle Scripts
Ion
Excel-DB Oracle Performance Tuning Training Course
Syllabus
Don Burleson Blog
© 2007-2016 by Donald K. Burleson

Introduction to Oracle Performance Tuning


This section introduces participants to a series of tuning steps that can be used to improve the performance of the
Oracle Server. The focus is on database issues rather than specific operating system performance issues. Students
will learn how to recognize, troubleshoot, and resolve common performance-related problems in administering an
Oracle database.

In conjunction with the other four courses in the Oracle Performance Tuning Certification Series, this course helps
students prepare for Oracle Certified Professional Exam number 1Z0-014, Oracle: Performance Tuning, part of the
Oracle DBA certification track.

Learning Objectives - After completing this course, students will be able to:

Apply sound database design principles to ensure high performance


Identify appropriate metrics and tuning goals for measuring and monitoring performance
Identify the critical performance tuning steps
Interpret Oracle alert files
Use Oracle trace files
Use Oracle utilities for performance tuning
Use the V$ utilities for tuning
Employ tuning techniques for different types of applications

Tuning the Oracle instance and objects

This section takes an in-depth look into the memory internals of the Oracle SGA. Students will learn how to identify
and diagnose Oracle memory performance problems, including problems in the library cache, data buffer cache and
data dictionary cache. Once students complete the second course, they’ll be able to handle any SGA-related
slowdown, and will have a set of pre-written SQL scripts that they can use to quickly identify performance
problems.

In conjunction with the other four courses in the Oracle Performance Tuning Certification Series, this course helps
students prepare for Oracle Certified Professional Exam number 1Z0-014, Oracle: Performance Tuning, part of the
Oracle DBA certification track.

Learning Objectives - After completing this course, students will be able to:

Tune the Oracle shared pool


Tune the data buffer cache
Tune Oracle rollback segments
Tune Oracle redo mechanisms Monitor and detect lock contention
Identify Oracle sort operations

This area will examine the behavior of the Oracle instance and look into the behavior of the Oracle background
process and the SGA memory. The topics for this section will include iterations of recommendations for changes to
init.ora parameters, changes to redo log and rollback segments, and changes of physical file locations on disk.

Oracle Instance Tuning

This section will also explore how to measures changes to the SGA performance and how to document the
performance improvements.

Redo Logs – This section to introduce the performance characteristics of the Oracle online and
archived redo logs.

UNDO (Rollback) segments – This section explores the interaction between the Oracle rollback
segments and the performance of the Oracle database.

Data Buffer management - Buffer management issues will include the performance of Oracle
with various values of db_block_size and the proper settings for db_block_buffers. This section
will also look at allocation of the DEFAULT, KEEP and RECYCLE pools.

www.dba-oracle.com/cou_perftune.htm 2/10
24/03/2021 Oracle Performance Tuning Training
Shared pool issues – This section will discuss the management of the components of the shared
pool with a focus on the management of activity in the library cache.

Sorting issues – This section will describe the management of the sort_area_size parameter and
how to determine the optimal setting for disk versus memory sorting.

Default SQL optimizer mode – This section will explore the optimizer_mode initialization
parameter and how the default parameter can effect the database performance.

Miscellaneous Initialization parameters – Other init.ora parameters such as


cursor_space_for_time will be discussed.

Concurrency Management - This will describe Oracle's serialization and locking


schemes and show how to manage locks.

Oracle object tuning

This area will include recommendations relating to the creation of new indexes, removing migrated/chained rows
and the re-sequencing of popular tables into index order to reduce I/O. The focus will be on the tradeoff between
efficient space management and high performance of select and insert SQL statements

Oracle index internals – This section will explain the relative benefits for b-tree, bitmapped and
function-based indexing. This section will also explain how to analyze indexes to determine those
indexes that require re-building.

Oracle replication – This section will explore Oracle replication and explain the ramifications of
replication versus database links for distributed data.

Oracle segment internals – This includes the high-water make and the effect on full-tale scans
after deletes. This section also includes a section on the pctused parameter and the effect on space
re-use and the performance of subsequent insert statements. There will also be a discussion of
pctfree and how pctfree can be used to avoid row chaining. The freelists parameter will also be
discussed with respect to buffer busy waits, and the freelist_groups parameter will be discussed for
Oracle parallel Server.

Object access patterns – A technique will be introduced to explain all of the SQL in the library
cache. This technique is indispensable for identify long-table full-table scans, identifying small
tables for caching.

Tuning Oracle Data access

This section takes an in-depth look into the concepts and skills needed to tune Oracle with SQL Students will learn
about the broader issues of tuning with SQL, and then delve into tuning with the Optimizers, the Explain Plan
Utility, Hints, and other tuning techniques. After completing this course, students will be able to tune all Oracle SQL
and take the actions required to ensure optimal SQL performance.

In conjunction with the other four courses in the Oracle Performance Tuning Certification Series, this course helps
students prepare for Oracle Certified Professional Exam number 1Z0-014, Oracle: Performance Tuning, part of the
Oracle DBA certification track.

Learning Objectives - After completing this course, students will be able to:

Define the major features of Oracle SQL


Tune using ANSI extensions
Tune using the Explain Plan Utility
Understand SQL Optimizer modes
Tune using the rule-based optimizer
Tune using the cost-based optimizer
Tune using SQL hints

This area will examine all of the SQL within the Oracle library cache and determine the best opportunities for tuning
of SQL. The focus on the SQL tuning will be to tune the most frequently executed statements first, and move down
the list as time permits. The areas for SQL tuning will be to optimize execution plans by removing unnecessary full-
table scans, fully utilizing indexes, and implementing advanced hints to derive the optimal execution plan for each
query. This may also involve replacing native SQL with PL/SQL procedures. Tuning SQL statements using Oracle
“hints” will be explained and techniques for testing SQL in a separate instance to determine the optimal execution
plan and minimal run time will be explored.

www.dba-oracle.com/cou_perftune.htm 3/10
24/03/2021 Oracle Performance Tuning Training
Cost-based vs. Rule-based optimization – See the relative benefits of cost-based vs rule based optimization
and see when to use rule and cost hints.

Tuning with indexes – Learn a technique for identifying unnecessary full-table scans

Tuning sub-queries –See the optimal execution plans for subqueries with the IN clause

Tuning with hints – See the techniques for using the use_hash, use_aj and other important Oracle tuning
hints.

Tuning with Parallel query - This section describes how parallel query works, and how to best provide
parallelism for Oracle.

Tuning the external environment

This section will teach students about external influences on Oracle performance, how to measure them, and how to
ensure that the external environment is properly configured for Oracle. Students will learn how to take advantage of
all the UNIX-based tools for monitoring, configuring, and tuning the external environment. The course also covers
tuning issues related to the operating system, tuning for effective CPU usage, reorganizing tables to improve I/O
performance and more.

The next section will focus on identifying and correcting external influences including RAM memory shortages,
disk I/O bottlenecks, and CPU shortages. The external environment will be monitored using the vmstat and iostat
utilities. This section will discuss the iterations of recommendations relating to environmental tuning such as OS
dispatching priorities, swap space allocation, and other OS-specific issues.

vmstat utility – Interpreting the runque, page-in and the CPU metrics.

iostat utility – Using the iostat utility to determine disk I/O access patterns and I/O bottlenecks.

This section will also includes an easy method for capturing environmental statistics inside Oracle tables for long-
term analysis.

In conjunction with the other four courses in the Oracle Performance Tuning Certification Series, this course helps
students prepare for Oracle Certified Professional Exam number 1Z0-014, Oracle Performance Tuning, part of the
Oracle DBA certification track.

Learning Objectives - After completing this course, students will be able to:

Define the major features of Oracle SQL


Tune using ANSI extensions
Tune using the Explain Plan Utility
Understand SQL Optimizer modes
Tune using the rule-based optimizer
Tune using the cost-based optimizer
Tune using SQL hints

Advanced Oracle Tuning Concepts

This section introduces students to advanced Oracle performance tuning tools and concepts associated with Oracle,
and is designed to give students the skills to maximize the performance of their Oracle database.

In conjunction with the other four courses in the Oracle Performance Tuning Certification Series, this course helps
students prepare for Oracle Certified Professional Exam number 1Z0-014, Oracle: Performance Tuning, part of the
Oracle DBA certification track.

Learning Objectives - After completing this course, students will be able to:

Use data blocks efficiently to improve I/O performance


Tune using the new Oracle Data Structures
Use the Data Dictionary to monitor performance
Define and use Oracle table and index partitions
Tune with Oracle indexes for optimal performance
Tune Oracle for Web Applications
Describe and implement tuning techniques for Distributed Databases
Tune the Oracle Parallel Server (OPS)

Prerequisites

In order to get the most from this course, students should have a basic understanding of the UNIX operating system,
PL/SQL coding techniques, and the following Oracle database concepts:

Oracle tables and tablespaces


www.dba-oracle.com/cou_perftune.htm 4/10
24/03/2021 Oracle Performance Tuning Training
Oracle instances
Oracle data dictionary

Please note that while the knowledge gained from this Oracle training may be valuable when preparing for Oracle certification exams, the content of
this course is not for Oracle Certification, including the Certified Professional (OCP) or Oracle Certified Associate (OCA) programs.

Oracle Performance Tuning


Four Day Syllabus

Day 1:

1 – 1: Introduction to Oracle tuning

- The top-down approach to tuning


- The history of Oracle tuning
- A review of the Oracle architecture
- The goals of Oracle tuning
- Overview of SQL tuning
- Oracle network bottlenecks
- Oracle RAM usage and bottlenecks
- Oracle CPU usage and bottlenecks
- Oracle disk I/O overview
- Monitoring server (sat, vmstat, top, glance)
- Movement toward server consolidation
- Exercise: Monitor CPU

1 – 2: Oracle disk I/O tuning

- History of DASD
- Understanding disk I/O
- Monitoring disk I/O (AWR, dba_hist_filestatxs)
- Sorted hash cluster tables
- Disk I/O waits
- Oracle data buffer internals (db_cache_size)
- Caching data blocks in the PGA (parallel full-table scans)
- Blocksize and I/O performance
- Exercise – view tablespace fragmentation

1 – 3: Oracle CPU Tuning

- Finding your cpu_count


- Measuring CPU usage with vmstat
- Oracle CPU usage
- Using processor affinity
- _optimizer_cost_model=cpu
- Parallel query and CPU
- Exercise: Timing a parallel query

1 – 4: Oracle RAM tuning

- all_rows and first_rows optimization and RAM


- Multiple data buffers
- Multiple blocksizes
- Measuring RAM paging
- Oracle SGA RAM
- Oracle PGA RAM
- Using the KEEP pool
- Automatic Memory Management (AMM)
- Exercise: Use the KEEP pool

1 – 5: Oracle Instance Tuning

- Global tuning techniques


- Display possible unnecessary large-table full-table scans
- Library cache tuning
- Finding missing indexes
- Tuning the database writer
- instance parameter tuning
- Exercise – change optimizer parameters

www.dba-oracle.com/cou_perftune.htm 5/10
24/03/2021 Oracle Performance Tuning Training

1 – 6: Oracle SQL Tuning Introduction

- SQL tuning hierarchy


- SQL tuning goals
- optimizer modes
- query re-write
- cursor_sharing
- viewing execution plans (autotrace)
- verifying optimal join techniques
- parallelizing SQL execution
- dynamic statistics
- Exercise – count times when a table is invoked
- 12c new SQL features
- function-based virtual column
- adaptive execution plans
- 12c new optimizer metadata collection features

*************************************************

DAY 2

2 – 1: AWR and ASH

- AWR vs STATSPACK
- Reading an AWR report
- AWR report analyzer
- Basics of predictive modeling for performance
- Finding repeating signatures of data

2 - 2: Oracle RAC Tuning

- RAC architecture tuning


- Tuning disk I/O on RAC
- Tuning the cache fusion layer on RAC

2 – 3: Oracle Tuning Pack

- creating SQL Profiles


- Recommending new indexes
- “automatic” SQL Tuning
- SQL Performance Advisor (SPA)
- recommending object reorganization

2 – 5: Oracle Diagnostic pack

- AWR and ASH


- real time SQL monitoring
- comparing performance periods
- Oracle monitoring & alert notifications (setting thresholds)

2 – 6: Oracle Tracing

- 10046 tracing
- TKPROF tracing
- Trace analyzer
- Autotrace

*****************************************

Day 3 – Introduction to SQL Tuning

3 – 1: Introduction to SQL tuning

- Pre-SQL database communications


- The evolution of SQL

www.dba-oracle.com/cou_perftune.htm 6/10
24/03/2021 Oracle Performance Tuning Training
- Declarative languages
- Exercise – Show permutations of the same query

3 –2: Optimizing Oracle SQL

- Parsing a SQL statement


- Semantic parsing
- Hard parse vs. soft parse
- Decision tree generation
- Making SQL reentrant
- Exercise – generate a syntax and semantic error

3 –3: Optimizer statistics

- Types of metadata
- Index metadata
- Segment metadata
- Server metadata
- System stats
- Exercise run dbms_stats

3 – 4: Exposing & Reading Execution Plans

- autotrace
- SQL*Trace
- Determine the steps of an execution plan
- Exercise: determine the sequence of steps in a complex execution plan

3 – 5: altering execution plans

- Changing CBO statistics


- Changing init.ora SGA parameters
- Changing optimizer parameters
- Using hints
- Using the opt_param hint

3 – 6: Oracle indexing

- Overview of Oracle indexing


- bitmap indexes
- bitmap join indexes
- guidelines for creating indexes
- function-based indexes (FBI)
- index usage monitoring
- fishing in the library cache
- optimizing indexes
- The transient nature of indexing
- database modality of workloads
- SQL Workload analysis
- Identifying EOW, EOM and EOY SQL.
- Creating on-demand indexing
- oracle text indexes
- Exercise – create an index on the pubs database

DAY 4 Advanced Topics in Tuning

4 – 1: Boolean/Built-in functions

- Boolean evaluation
- Decode and case
- Basics of BIFs
- Function-based indexing
- Creating a custom BIF using PL/SQL
- The effect of BIFs on SQL execution
- Exercise: Write a custom built-in function

4 – 2: tuning Oracle sorting

www.dba-oracle.com/cou_perftune.htm 7/10
24/03/2021 Oracle Performance Tuning Training
- Basics of sorting
- RAM usage in a hash join
- RAM for indexes
- Use indexes to avoid sorts
- Sorts in execution plans
- Sorts in semi joins
- Use autotrace to see sorts
- What causes sorts?
- PGA and sorting
- super-sizing your PGA to avoid disk sorts
- sorted hash clusters
- Exercise: avoid sort by retrieving data in pre-sorted order
Exercise: Use an “index” hint to avoid sort

4 – 3: Tuning Oracle subqueries

- Subquery overhead
- Scalar subqueries
- In-Line views
- Correlated vs non-correlated subqueries
- WHERE clause query re-write
- Tuning IN and NOT IN subqueries
- Tuning EXISTS subqueries
- Tuning correlated subqueries
- Using subquery hints (push_subq)
- Avoiding subqueries
- Non-correlated subqueries and NOT IN clause
- Automatic rewrite of EXISTS subqueries
- The merge_aj hint
- The anti-join hints
- Exercise: Tune a subquery

4 – 4 Tuning with temp objects (materialized views, global temporary tables)

- Tuning with temporary tables


- Oracle global temporary tables (GTT)
- The Oracle SQL WITH clause
- Exercise: Test query rewritten to use temp tables

4- 5: Tuning full-table scans

- Basics of file multiblock I/O


- Deciding when to invoke full-table scan
- RAM caching in the SGA
- Automating table caching (KEEP Pool)
- Solid State Disks and full-table scans
- Using plan9i.sql to find full-table scans
- Tracking full-scans over time with AWR
- Exercise: Find high disk read SQL

4- 6: tuning parallel query

- Parallel query
- Parallel DML
- Parallel DDL
- Parallel utilities
- Setting optimal parallel degree
- RAC and parallel query
- Parallel query tuning and buffering
- Parallel query hints
- Exercise: Invoke parallel query

***************************************************

Time permitting:

5 – 1: Oracle optimizer goals

www.dba-oracle.com/cou_perftune.htm 8/10
24/03/2021 Oracle Performance Tuning Training
- Roadblocks to SQL tuning
- optimizer_index_cost_adj
- Global changes and SQL tuning (parameters, statistics, reorganizations)
- Using the rule-based optimizer as a testing tool
- Configuring the optimizer
- Changing optimizer_mode
- Governors for the optimizer
- Using hidden parameters
- Using the opt_param hint
- gathering workload statistics
- optimizer_cost_model
- Exercise – change optimizer_mode

This is a BC Oracle training course (c) 2007-2016

Burleson is the American Team

Note: This Oracle documentation was created as a support and Oracle training
reference for use by our DBA performance tuning consulting professionals. Feel
free to ask questions on our Oracle forum.

Verify experience! Anyone considering using the services of an Oracle support


expert should independently investigate their credentials and experience, and
not rely on advertisements and self-proclaimed expertise. All legitimate Oracle
experts publish their Oracle qualifications.

Errata? Oracle technology is changing and we strive to update our BC Oracle


support information. If you find an error or have a suggestion for improving our
content, we would appreciate your feedback. Just e-mail:

and include the URL for the page.

Burleson Consulting
The Oracle of Database Support

Oracle Performance Tuning

Remote DBA Services

Copyright © 1996 - 2017

www.dba-oracle.com/cou_perftune.htm 9/10
24/03/2021 Oracle Performance Tuning Training
All rights reserved by Burleson

Oracle ® is the registered trademark of Oracle Corporation.

Remote Emergency Support provided by


Conversational

www.dba-oracle.com/cou_perftune.htm 10/10

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy