Index

A note on the digital index

A link in an index entry is displayed as the section title in which that entry appears. Because some sections have multiple index markers, it is not unusual for an entry to have several links to the same section. Clicking on any link will take you directly to the place in the text in which the marker appears.

A

Adams, Steve, Responding to the Diagnosis
ALTER SESSION SET EVENTS command, Time Scope Errors at Trace Activation
Amdahl’s Law, Amdahl’s Law, Glossary
analyzing response time, Tools for Analyzing Response TimeResource Profile
resource profiles, Resource ProfileResource Profile
sequence diagrams, Sequence DiagramSequence Diagram
application identification, SQL trace data files, Application identification
applications
client-server, finding trace files for, Simple Client-Server Applications
connection-pooling, finding trace files for, Connection-Pooling ApplicationsSome Good News
packaged software, convincing vendors to improve performance of, Eliminating Wasteful Work
scalable, attributes of, Attributes of a Scalable Application
architecture, multitier application, Parse Optimization

B

BACKGROUND_DUMP_DEST parameter, Finding Your Trace File(s)
directory, Trace Writing
MTS and, Oracle Multi-Threaded Server
bind variables
avoiding hard parses with, Parse Optimization
SQL trace data files, Bind variables
buffer busy wait events, “Too Much Data” Is Really Not Enough Data, Logical I/O Optimization

C

cache hit ratio (see CHR)
capacity upgrades, Upgrade Capacity
case studies, performance improvement projects, Case StudiesConclusion
large CPU service duration, Case 2: Large CPU Service DurationLessons Learned
diagnosis/response, Diagnosis and Response
lessons learned, Lessons Learned
results, Results
targeting response time, TargetingTargeting
large read event duration, Case 4: Large Read Event DurationLessons Learned
diagnosis/repair, Diagnosis and Repair
lessons learned, Lessons Learned
results, Results
targeting response time, Targeting
large SQL*Net event duration, Case 3: Large SQL*Net Event DurationLessons Learned
diagnosis/response, Diagnosis and ResponseDiagnosis and Response
lessons learned, Lessons Learned
results, Results
targeting response time, Targeting
misleading systemwide data, Case 1: Misled by System-Wide DataLessons Learned
diagnosis/response, Diagnosis and ResponseDiagnosis and Response
lessons learned, Lessons Learned
results, Results
targeting response time, Targeting
CBO (cost-based query optimizer), Resource Profile
CDF (cumulative distribution function), Cumulative distribution function (CDF) of response time, Glossary
CHR (cache hit ratio), Resource Profile
optimizing, Optimizing Your Database Buffer Cache Hit Ratio
client-server applications, finding trace files for, Simple Client-Server Applications
collecting
diagnostic data
aggregating, “Too Much Data” Is Really Not Enough Data
expectations about, Expectations About Data CollectionExpectations About Data Collection
for long-running user actions, Long-Running User Actions
scope, Data Scope“Too Much Data” Is Really Not Enough Data
scoping errors, Scoping ErrorsScoping Errors
extended SQL trace data, Collecting Extended SQL Trace DataExercises
collection errors, Eliminating Collection ErrorIncomplete Recursive SQL Data
understanding application architectures, Understanding Your ApplicationUnderstanding Your Application
commercial approach, to repairing response time problems, How to Work a Resource Profile
Compulsive Tuning Disorder (see CTD)
connection-pooling applications, finding trace files for, Connection-Pooling ApplicationsConnection-Pooling Applications
cost constraint, improvement projects, Forecasting Project Cost
cost-based query optimizer (CBO), Resource Profile
CPU consumption, CPU Consumption
bad targets, Response time fluctuations
double-counting, CPU Consumption Double-CountingCPU Consumption Double-Counting
measuring, complications in, Complications in Measuring CPU ConsumptionHow getrusage works
how getrusage works, How getrusage worksHow getrusage works
how gettimeofday works, How gettimeofday works
CPU service events, Response Time Focus, “Too Much Data” Is Really Not Enough Data, Approximating a Session’s Resource Profile, The denominator problem, Queueing Visualized, Response Time Components, CPU service
creating specifications for performance improvement projects, Making a Good SpecificationDetermining Who Will Execute Each Action and When
determining who executes user actions, Determining Who Will Execute Each Action and When
identifying user actions, User ActionIdentifying the Right User Actions and Contexts
prioritizing user actions, Prioritizing the User Actions
CTD (Compulsive Tuning Disorder), Expectations About Data Collection, Glossary
lack of termination condition in conventional Oracle tuning methods, How to Tell When Your Work Is Done
cumulative distribution function (see CDF)
cursor identification, SQL trace data files, Cursor identification
cursor numbers, SQL trace data files, Cursor numbers
customer care, new standard of, A New Standard of Customer Care

D

data
diagnostic (see diagnostic data)
extended SQL trace (see extended SQL trace data)
Oracle fixed view, Oracle Fixed View DataExercises
deficiences of, Deficiencies of Fixed View DataLack of Read Consistency
database buffer cache, Logical I/O Optimization
hit ratio, Glossary
optimizing, Optimizing Your Database Buffer Cache Hit Ratio
unreliability of, Optimizing Your Database Buffer Cache Hit Ratio
database calls, Glossary
between-call events, Responding to large SQL*Net response time contributions
duration data, lack of, with Oracle fixed view data, Lack of Database Call Duration Data
eliminating unnecessary when working resource profiles, Eliminate Unnecessary CallsThinking in a bigger box
supply/demand in technology stack, Supply and demand in the technology stack
LIO count, Logical I/O Optimization
parent-child relationships, Parent-child relationships
recursive statistics, Recursive statisticsRecursive statistics
SQL trace data files, Database calls
recursive SQL, Recursive SQL Double-CountingRecursive statistics
response time accounting, Response Time AccountingRecursive statistics
time between, Time Between Database Calls
forward attribution, Forward Attribution for Between-Call Events
missing, Effect
time within, Time Within a Database Call
forward attribution, Forward Attribution for Within-Call Events
missing, Effect
db file scattered read events, Difficulty of Proper Time-Scoping, The denominator problem, unaccounted-for
db file sequential read events, Forward Attribution for Within-Call Events, Oracle Kernel Timings, Infinite capacity for waiting
db scattered read events, “Too Much Data” Is Really Not Enough Data
DBMS_SUPPORT package, Activating trace from a third-party session
DBMS_SYSTEM package, Activating trace from a third-party session
determinism, Expectations About Data Collection
diagnosis, responding to, Responding to the DiagnosisAttributes of a Scalable Application
case study of large CPU service duration, Diagnosis and Response
case study of large read event duration, Diagnosis and Repair
case study of large SQL*Net event duration, Diagnosis and ResponseDiagnosis and Response
case study of systemwide data, Diagnosis and ResponseDiagnosis and Response
eliminating wasteful work, Eliminating Wasteful WorkWrite Optimization
LIO optimization, Logical I/O OptimizationHow to optimize SQL
parse optimization, Parse OptimizationParse Optimization
SQL optimization, How to optimize SQL
why LIO problems are common, Why LIO problems are so common
write optimization, Write Optimization
response time components, Response Time ComponentsResponding to large response time contributions from other events
diagnostic data, Interpreting Extended SQL Trace Data
(see also extended SQL trace data)
collecting
aggregating, “Too Much Data” Is Really Not Enough Data
expectations about, Expectations About Data CollectionExpectations About Data Collection
for long-running user actions, Long-Running User Actions
Oracle’s operational timing data, Oracle Diagnostic Data SourcesOracle Diagnostic Data Sources
scope, Data Scope“Too Much Data” Is Really Not Enough Data
scoping errors, Scoping ErrorsScoping Errors
making sense of, Making Sense of Your Diagnostic DataMaking Sense of Your Diagnostic Data
targeting the right, Targeting the Right Diagnostic DataFor More Information
documentation
Oracle database product, Responding to the Diagnosis
Oracle9i release 2 performance, Response Time Components

E

E-Business Suite, newer releases of, Expectations About Data Collection
enqueue event, V$SESSION_WAIT, Approximating a Session’s Resource Profile
Ensor, Dave, Overcoming Common Objections, How to Work a Resource Profile
Erlang C formula, Queueing delay and response time
Erlang, Agner, Queueing delay and response time, Using the pdf, Non-M/M/m Systems, Poisson-exponential relationship, Glossary
errors
collecting extended SQL trace data, Eliminating Collection ErrorIncomplete Recursive SQL Data
incomplete recursive SQL data, Incomplete Recursive SQL DataExercises
missing time, at trace deactivation, Missing Time at Trace DeactivationMissing Time at Trace Deactivation
overflow, Glossary
Oracle fixed view data, susceptibility to, Susceptibility to Overflow and Other Errors
quantization, Quantization ErrorBounds of Quantization Error, Glossary
bounds of, Bounds of Quantization ErrorBounds of Quantization Error
CPU consumption, complications in measuring, Complications in Measuring CPU ConsumptionHow getrusage works
definition of, Definition of Quantization ErrorDefinition of Quantization Error
detecting, Detection of Quantization ErrorDetection of Quantization Error
measurement resolution, Measurement ResolutionMeasurement Resolution
time scope, at trace activation, Time Scope Errors at Trace ActivationExcess database call data at trace activation
event counts, Response Time Focus
events, Oracle wait, unaccounted-for, Glossary
(see also idle events)
attributing, Glossary
buffer busy, “Too Much Data” Is Really Not Enough Data, Logical I/O Optimization
CPU service, Response Time Focus, “Too Much Data” Is Really Not Enough Data, Approximating a Session’s Resource Profile, The denominator problem, Queueing Visualized, Response Time Components, CPU service
db file scattered read, “Too Much Data” Is Really Not Enough Data, Difficulty of Proper Time-Scoping, The denominator problem, unaccounted-for
db file sequential read, Forward Attribution for Within-Call Events, Oracle Kernel Timings, Infinite capacity for waiting
enqueue, V$SESSION_WAIT, Approximating a Session’s Resource Profile
free buffer, Logical I/O Optimization, Write Optimization
latch free, User Action Focus, “Too Much Data” Is Really Not Enough Data, Difficulty of Proper Action-Scoping, How to Tell When Your Work Is Done, Logical I/O Optimization, Parse Optimization, Case 1: Misled by System-Wide Data
log file switch completion, Finding Where a System Is Stuck, Logical I/O Optimization
log file sync, V$SESSION_WAIT, Responding to the Diagnosis, Logical I/O Optimization
pmon timer, The “idle events” problem, Idle events in background sessions
PX Deq Credit: need buffer, unaccounted-for
PX events, Responding to large response time contributions from other events
rdbms ipc message, The “idle events” problem, The denominator problem, Idle events in background sessions
single-task message, Responding to large SQL*Net response time contributions
smon timer, The “idle events” problem, Idle events in background sessions
SQL*Net message from client, Response Time Focus, Forward Attribution for Between-Call Events, Missing wait event data at trace activation, Approximating a Session’s Resource Profile, The “idle events” problemThe denominator problem, No Event Is Inherently “Unimportant”, No Event Is Inherently “Unimportant”, Parse Optimization, Targeting, Targeting
SQL*Net message to client, No Event Is Inherently “Unimportant”, No Event Is Inherently “Unimportant”
SQL*Net more data from client, Responding to large SQL*Net response time contributions, Parse Optimization, Diagnosis and Response
START_SQL_TRACE_IN_SESSION, Activating trace from a third-party session
write complete, Logical I/O Optimization
extended SQL trace data, Evolution of the Response Time Model
activating, Activating Extended SQL Trace
collecting, Collecting Extended SQL Trace DataExercises
understanding application architectures, Understanding Your ApplicationUnderstanding Your Application
collection errors, eliminating, Eliminating Collection ErrorIncomplete Recursive SQL Data
extracting response time information from, Walking the ClockClock Walk Formulas
files
application identification, Application identification
bind variables, Bind variables
confidentiality/sensitivity of, Collecting Extended SQL Trace Data
cursor identification, Cursor identification
cursor numbers, Cursor numbers
database calls, Database calls
element definitions, Trace File Element DefinitionsReference summary
file names, Trace File Names
finding, Finding Your Trace File(s)Some Good News
recursive relationships among database calls, Recursive SQL Double-CountingRecursive statistics
response time accounting, Response Time AccountingRecursive statistics
row source operations, Row source operations
session identification, Session identification and timestamps
time between database calls, Time Between Database Calls
time within a database call, Time Within a Database Call
timestamps, Session identification and timestamps
transaction end markers, Transaction end markers
wait events, Wait events
walk-through, Trace File Walk-ThroughTrace File Walk-Through, Detailed Trace File Walk-ThroughDetailed Trace File Walk-Through
writing to, Trace Writing
incomplete recursive SQL data, Incomplete Recursive SQL DataExercises
interpreting, Interpreting Extended SQL Trace DataExercises
missing time errors at trace deactivation, Missing Time at Trace DeactivationMissing Time at Trace Deactivation
from Oracle8i and earlier kernels, walking the clock through, Oracle Release 8 and Prior
from Oracle9i kernel, walking the clock through, Oracle Release 9
time scope errors at trace activation, Time Scope Errors at Trace ActivationExcess database call data at trace activation
tracing someone else’s source code, Tracing Someone Else’s Source CodeActivating trace from a third-party session
tracing your own source code, Tracing Your Own Source CodeTracing Your Own Source Code
underutilization of, reasons for, Why I Wrote This Book

F

file names, extended SQL trace files, Trace File Names
files, extended SQL trace
application identification, Application identification
bind variables, Bind variables
confidentiality/sensitivity of, Collecting Extended SQL Trace Data
cursor identification, Cursor identification
cursor numbers, Cursor numbers
database calls, Database calls
element definitions, Trace File Element DefinitionsReference summary
file names, Trace File Names
finding, Finding Your Trace File(s)Some Good News
identification, Session identification and timestamps
from Oracle8i and earlier kernels, Oracle Release 8 and Prior
from Oracle9i kernel, Oracle Release 9
recursive relationships among database calls, Recursive SQL Double-CountingRecursive statistics
response time accounting, Response Time AccountingRecursive statistics
row source operations, Row source operations
time between database calls, Time Between Database Calls
time within a database call, Time Within a Database Call
timestamps, Session identification and timestamps
transaction end markers, Transaction end markers
wait events, Wait events
walk-through, Trace File Walk-ThroughTrace File Walk-Through, Detailed Trace File Walk-ThroughDetailed Trace File Walk-Through
writing to, Trace Writing
finding
economically optimal performance improvement activity, How to Find the Economically Optimal Performance Improvement Activity
extended SQL trace files, Finding Your Trace File(s)Some Good News
for client-server applications, Simple Client-Server Applications
for connection-pooling applications, Connection-Pooling ApplicationsSome Good News
MTS and, Oracle Multi-Threaded Server
fixed view definition, Finding a Fixed View Definition
inefficient SQL, Finding Inefficient SQLFinding Inefficient SQL
quantization errors, Detection of Quantization ErrorDetection of Quantization Error
where session is stuck, Finding Where a Session Is Stuck
where system is stuck, Finding Where a System Is Stuck
focusing on
response time, Response Time Focus
user actions, User Action Focus
forecasting improvement projects, How to Forecast Improvement
benefits of, Forecasting Project BenefitsIf you can’t monetize the benefits
cost of, Forecasting Project Cost
net payoff of, Forecasting Project Net PayoffForecasting Project Risk
risk of, Forecasting Project Risk
formulas
M/M/m queueing model, M/M/m Queueing Theory Formulas
queueing theory, use of Greek letters, Service channels, utilization, and stability
for walking the clock, Clock Walk Formulas
forward attribution, Forward Attribution for Within-Call Events, Glossary
free buffer wait events, Logical I/O Optimization, Write Optimization

G

geek approach, to repairing response time problems, How to Work a Resource Profile
getrusage operation, how it works, How getrusage worksHow getrusage works
gettimeofday operation, how it works, How gettimeofday works
Greek alphabet, with English equivalents, Greek Alphabet

H

hardware upgrades, performance degradation and, A Better Way to Optimize
Heisenberg Uncertainty principle, performance analysis and, Measurement Resolution
Hotsos Profiler program, Why I Wrote This Book

I

idle events, The “idle events” problem, Glossary
in background sessions, Idle events in background sessions
importance of, No Event Is Inherently “Unimportant”Responding to large response time contributions from other events
problem, The “idle events” problem
improvement activity
economically optimal, finding, How to Find the Economically Optimal Performance Improvement Activity
targeting the right, Targeting the Right Improvement ActivityForecasting Project Risk
input/output, measuring, V$SESS_IO
inter-process competition, eliminating, when working resource profiles, Eliminate Inter-Process Competition
attacking latency problems, How to attack a latency problem
finding competing workload, How to find competing workload
interpreting extended SQL trace data, Interpreting Extended SQL Trace DataExercises, Trace File Walk-Through
(see also extended SQL trace data)
interrupt transition, The interrupt Transition

K

kernel mode, Operating System Process Management
“knee” of performance curve, The kneeThe knee
Kolk, Anjo, Responding to the Diagnosis

M

M/M/m queueing model, The M/M/m Queueing ModelSensitivity analysis, Glossary
behaviors of, Behavior of M/M/m SystemsParameter sensitivity
multichannel scalability, Multi-channel scalabilityMulti-channel scalability
parameter sensitivity, Parameter sensitivityParameter sensitivity
response time fluctations, Response time fluctuations
“knee” of performance curve, The kneeThe knee
exponential distribution, Exponential Distribution
Poisson-expontential relationship, Poisson-exponential relationship
program to test for, A program to test for exponential distribution
testing for fit to, Testing for fit to exponential distribution
formulas, M/M/m Queueing Theory Formulas
M/M/m queueing systems, M/M/m Systems
non-M/M/m queueing systems, Non-M/M/m Systems
perspective on, Perspective
using M/M/m, worked example, Using M/M/m: Worked ExampleSensitivity analysis
checking for stability, Suitability for modeling with M/M/mSuitability for modeling with M/M/m
computing required number of CPUs, Computing the required number of CPUsComputing the required number of CPUs
negotiating negotiable parameters, Negotiating the negotiable parametersNegotiating the negotiable parameters
perspective on, Perspective
sensitivity analysis, Sensitivity analysis
usefulness of optimistic model, What we can learn from an optimistic model
using Goal Seek in Microsoft Excel, Using Goal Seek in Microsoft Excel
mailing lists, optimizing SQL, How to optimize SQL
mean utilization per channel, Service channels, utilization, and stability
measurement intrusion effect, Glossary
Oracle kernel timing, Measurement Intrusion EffectMeasurement Intrusion Effect
of polling on Oracle fixed view data, Measurement Intrusion Effect of Polling
measuring
CPU consumption, complications in, Complications in Measuring CPU ConsumptionHow getrusage works
how getrusage works, How getrusage worksHow getrusage works
how gettimeofday works, How gettimeofday works
input/output, V$SESS_IO
software, How Software Measures ItselfCPU Consumption
CPU consumption, CPU Consumption
elapsed time, Elapsed Time
memory
accesses, eliminating, Resource Profile
database buffer cache, Logical I/O Optimization
system global area, Logical I/O Optimization
Method C performance-tuning method, “You’re Doing It Wrong”
Method R performance-tuning method, Method REvaluation of Effectiveness
methods, Glossary
performance-tuning (see performance-tuning methods)
MTS (Multi-Threaded Server), Oracle Multi-Threaded Server
Multi-Threaded Server (MTS), Oracle Multi-Threaded Server

O

OCI (Oracle Call Interface), Parse Optimization
operating system process management, Operating System Process ManagementOther States and Transitions
interrupt transition, The interrupt Transition
sys call transition, The sys call Transition
optimization, A Better Way to OptimizeEvaluation of Effectiveness, Glossary
database buffer cache hit ratio, Optimizing Your Database Buffer Cache Hit Ratio
LIO, Logical I/O OptimizationHow to optimize SQL
parse, Parse OptimizationParse Optimization
SQL, How to optimize SQL
technology, advances in, User Action FocusAll Together Now
Amdahl’s Law, Amdahl’s Law
response time focus, Response Time Focus
write operations, Write Optimization
Oracle
database product documentation, Responding to the Diagnosis
kernel
obtaining diagnostic data for code paths, V$SESSION_EVENT
timing (see Oracle kernel timing)
MetaLink support bulletins/bug reports, Responding to the Diagnosis
operation timing data sources, Oracle Diagnostic Data SourcesOracle Diagnostic Data Sources
pseudoevents, Oracle Pseudoeventsunaccounted-for
unaccounted for, unaccounted-for
wait times, components of, Oracle wait times
“wait interface” [Oracle
wait interface (see wait interface)
Oracle Call Interface (OCI), Parse Optimization
Oracle fixed view data, Oracle Fixed View DataExercises
deficiencies of, Deficiencies of Fixed View DataLack of Read Consistency
difficulty of proper action-scoping, Difficulty of Proper Action-Scoping
difficulty of proper time-scoping, Difficulty of Proper Time-Scoping
lack of database call duration data, Lack of Database Call Duration Data
lack of detail, Lack of Detail
lack of read consistency, Lack of Read ConsistencyLack of Read Consistency
measurement intrusion effect of polling, Measurement Intrusion Effect of Polling
susceptibility to overflow/other errors, Susceptibility to Overflow and Other Errors
too many data sources, Too Many Data Sources
Oracle “wait interface”, The Oracle “Wait Interface”
SQL queries, Useful Fixed View QueriesTargeting revisited
approximating session’s resource profile, Approximating a Session’s Resource ProfileApproximating a Session’s Resource Profile
finding fixed view definition, Finding a Fixed View Definition
finding inefficient SQL, Finding Inefficient SQLFinding Inefficient SQL
finding where session is stuck, Finding Where a Session Is Stuck
finding where system is stuck, Finding Where a System Is Stuck
test harness, Tom Kyte’s Test Harness
viewing waits systemwide, Viewing Waits System-WideTargeting revisited
Oracle kernel timing, Oracle Kernel TimingsExercises
unaccounted-for time, Unaccounted-for TimeTrace Writing
CPU consumption double-counting, CPU Consumption Double-CountingCPU Consumption Double-Counting
measurement intrusion effect, Measurement Intrusion EffectMeasurement Intrusion Effect
quantization errors, Quantization ErrorBounds of Quantization Error
time spent not executing, Time Spent Not ExecutingProcess States and Transitions Revisited
un-instrumented kernel code, Un-Instrumented Oracle Kernel CodeTrace Writing
Oracle practitioners, queueing theory for, Queueing TheorySensitivity analysis
model input/out values, Model Input and Output ValuesCumulative distribution function (CDF) of response time
random variables, Random VariablesA program to test for exponential distribution
Oracle-L email list, Why I Wrote This Book, How to optimize SQL
Oracle8i and earlier kernels, walking the clock through trace files emitted by, Oracle Release 8 and Prior
Oracle9i
release 2 performance documentation, Response Time Components
trace files emitted by kernel, walking the clock through, Oracle Release 9
oraus.msg, Activating Extended SQL Trace
overflow errors, Glossary
Oracle fixed view data, susceptibility to, Susceptibility to Overflow and Other Errors

P

Parallel Execution (PX), Simple Client-Server Applications
parse optimization, Parse OptimizationParse Optimization
PDF (probability density function), Probability density function (pdf), Glossary
performance
analysis, Heisenberg Uncertainty principle and, Measurement Resolution
analysts, optimal, The optimal performance analystThe optimal performance analyst
improvement activity (see improvement activity)
improvement projects (see performance improvement projects)
models, Performance Models
performance improvement projects, A Better Way to Optimize
case studies, Case StudiesConclusion
large CPU service duration, Case 2: Large CPU Service DurationLessons Learned
large read event duration, Case 4: Large Read Event DurationLessons Learned
large SQL*Net event duration, Case 3: Large SQL*Net Event DurationLessons Learned
misleading systemwide data, Case 1: Misled by System-Wide DataLessons Learned
cost constraint, Forecasting Project Cost
determining when finished, How to Tell When Your Work Is DoneHow to Tell When Your Work Is Done
forecasting, How to Forecast Improvement
benefits of, Forecasting Project BenefitsIf you can’t monetize the benefits
cost of, Forecasting Project Cost
net payoff, Forecasting Project Net PayoffForecasting Project Risk
risk of, Forecasting Project Risk
low-return improvements, possible benefits of, Possible benefits of low-return improvements
specifications, Targeting the Right User Actions
creating, Making a Good SpecificationDetermining Who Will Execute Each Action and When
over-constraint, Specification Over-Constraint
reliability of, Specification ReliabilityEconomic Constraints
performance-tuning methods
determinism of, Expectations About Data Collection
good, requirements of, Requirements of a Good Method
response time-based, Method REvaluation of Effectiveness
evaluating effectiveness, Evaluation of Effectiveness
objections to, Overcoming Common Objections“The method is unconventional”
trial-and error, “You’re Doing It Wrong”
Perl DBI ora_check_sql, Parse Optimization
physical I/O (see PIO)
PIO (physical I/O), Resource Profile, Glossary
pmon timer events, The “idle events” problem, Idle events in background sessions
preemption, The interrupt Transition
probability density function (see PDF)
process management, operating system, Operating System Process ManagementOther States and Transitions
interrupt transition, The interrupt Transition
sys call transition, The sys call Transition
PX (Parallel Execution), Simple Client-Server Applications
PX Deq Credit: need buffer events, unaccounted-for
PX events, Responding to large response time contributions from other events
PX slaves, Oracle Parallel Execution

Q

quantization errors, Quantization ErrorBounds of Quantization Error, Glossary
bounds of, Bounds of Quantization ErrorBounds of Quantization Error
CPU consumption, complications in measuring, Complications in Measuring CPU ConsumptionHow getrusage works
definition of, Definition of Quantization ErrorDefinition of Quantization Error
detecting, Detection of Quantization ErrorDetection of Quantization Error
measurement resolution, Measurement ResolutionMeasurement Resolution
queueing economics, Queueing Economics
queueing theory, Queueing TheorySensitivity analysis, Glossary
formulas, use of Greek letters, Service channels, utilization, and stability
model input/output values, Model Input and Output ValuesCumulative distribution function (CDF) of response time
arrivals/completions, Arrivals and completions
CDF of response time, Cumulative distribution function (CDF) of response time
maximum effective throughput, Maximum effective throughput
queueing delay/response time, Queueing delay and response time
service channels, utilization, stability, Service channels, utilization, and stability
system time/service rate, Service time and service rate
perspective on, Perspective
queueing delay, Queueing Theory
random variables, Random VariablesWhy understanding distribution is important
expected value, Expected value
PDF, Probability density function (pdf)Using the pdf
understanding distribution, Why understanding distribution is important
service time, Queueing Theory
“wait interface” vs., Queueing Theory Versus the “Wait Interface”Differences in queueing theory notation
differences in queueing theory notation, Differences in queueing theory notation
Oracle wait times, Oracle wait times

R

random variables, Forecasting Project Risk, Glossary
ratios, Response Time Focus
fundamental flaw of, Possible benefits of low-return improvements
unreliability of, How to optimize SQL
rdbms ipc message events, The “idle events” problem, The denominator problem, Idle events in background sessions
recursive SQL, Recursive SQL Double-Counting, Glossary
resource profiles, Resource ProfileResource Profile, Glossary
dominated by between-call events, Responding to large SQL*Net response time contributions
dominated by SQL*Net events, Responding to large SQL*Net response time contributions
as first step in targeting response time, Beyond the Resource Profile
how to work, How to Work a Resource ProfileUpgrade Capacity
in descending response time order, Work in Descending Response Time OrderPossible benefits of low-return improvements
eliminate inter-process competition, Eliminate Inter-Process CompetitionHow to find competing workload
eliminate unnecessary calls, Eliminate Unnecessary CallsThinking in a bigger box
upgrade capacity, Upgrade Capacity
working, Working the Resource ProfileHow to Tell When Your Work Is Done
determining when finished, How to Tell When Your Work Is DoneHow to Tell When Your Work Is Done
resources
bumblebee book, Responding to the Diagnosis
consumption statistics, obtaining, V$SYSTEM_EVENT
optimizing SQL, How to optimize SQL
Oracle MetaLink support bulletins/bug reports, Responding to the Diagnosis
Oracle product documentation, Responding to the Diagnosis
Oracle-L email list, Why I Wrote This Book, How to optimize SQL
YAPP paper, Responding to the Diagnosis
response time, Glossary
accounting, Response Time AccountingRecursive statistics
components, Response Time ComponentsResponding to large response time contributions from other events
idle events, importance of, No Event Is Inherently “Unimportant”Responding to large response time contributions from other events
knowing where to find details about, Responding to the Diagnosis
Oracle pseudoevents, Oracle Pseudoeventsunaccounted-for
retaining general knowledge about a few, Responding to the Diagnosis
view in descending order, Amdahl’s Law
view in descending order, working resource profiles, Work in Descending Response Time Order
contributions from other events, responding to, Responding to large response time contributions from other events
fluctuations in M/M/m queueing model, Response time fluctuations
focusing on, Response Time Focus
information
extracting from raw SQL trace data, Walking the ClockClock Walk Formulas
“knee” of performance curve, The kneeThe knee, Glossary
model, evolution of, Evolution of the Response Time ModelEvolution of the Response Time Model
performance-tuning method based on, Method REvaluation of Effectiveness, Perspective
evaluating effectiveness, Evaluation of Effectiveness
objections to, Overcoming Common Objections“The method is unconventional”
problems, approaches to repairing, How to Work a Resource Profile
queueing theory and, Model Input and Output Values
targeting
large CPU service duration, TargetingTargeting
large read event duration, Targeting
large SQL*Net event duration, Targeting
misleading systemwide data, Targeting
resource profiles as first step, Beyond the Resource Profile
tools for analyzing, Tools for Analyzing Response TimeResource Profile
resource profiles, Resource ProfileResource Profile
sequence diagrams, Sequence DiagramSequence Diagram
row source operations, SQL trace data files, Row source operations

S

scalability, Attributes of a Scalable Application, Glossary
sctrace program, How Software Measures Itself
sequence diagrams, Sequence DiagramSequence Diagram, Glossary
queueing theory and, Queueing Theory
session identification, SQL trace data files, Session identification and timestamps
sessions, Glossary
present state of, fixed view data, V$SESSION_WAIT
resource profile, approximating, Approximating a Session’s Resource ProfileApproximating a Session’s Resource Profile
stuck, finding where, Finding Where a Session Is Stuck
single-task message events, Responding to large SQL*Net response time contributions
smart approach, to repairing response time problems, How to Work a Resource Profile
smon timer events, The “idle events” problem, Idle events in background sessions
SMP (symmetric multiprocessing), Service channels, utilization, and stability
software, how it measures itself, How Software Measures ItselfCPU Consumption
CPU consumption, CPU Consumption
elapsed time, Elapsed Time
source code
tracing someone else’s, Tracing Someone Else’s Source CodeActivating trace from a third-party session
tracing your own, Tracing Your Own Source CodeTracing Your Own Source Code
Sparky program, Why I Wrote This Book
SQL
optimizing, How to optimize SQL
recursive, Recursive SQL Double-Counting, Glossary
statements, ranking efficiency, V$SQL
text strings, eliminating in parse calls, Parse Optimization
trace timing statistics, Oracle Time Units
WHERE clauses, eliminating string literals in, Parse Optimization
SQL queries of Oracle fixed views, Useful Fixed View QueriesTargeting revisited
approximating session’s resource profile, Approximating a Session’s Resource ProfileApproximating a Session’s Resource Profile
finding fixed view definition, Finding a Fixed View Definition
finding inefficient SQL, Finding Inefficient SQLFinding Inefficient SQL
finding where session is stuck, Finding Where a Session Is Stuck
finding where system is stuck, Finding Where a System Is Stuck
performance improvement projects, “Too Much Data” Is Really Not Enough Data
test harness, Tom Kyte’s Test Harness
viewing waits systemwide, Viewing Waits System-WideTargeting revisited
SQL trace (see extended SQL trace data)
SQL*Net message from client events, Response Time Focus, Forward Attribution for Between-Call Events, Missing wait event data at trace activation, Approximating a Session’s Resource Profile, The “idle events” problemThe denominator problem, No Event Is Inherently “Unimportant”, No Event Is Inherently “Unimportant”, Parse Optimization, Targeting, Targeting
SQL*Net message to client events, No Event Is Inherently “Unimportant”, No Event Is Inherently “Unimportant”
SQL*Net more data from client events, Responding to large SQL*Net response time contributions, Parse Optimization, Diagnosis and ResponseDiagnosis and Repair
SQL*Net, case study of large event duration, Case 3: Large SQL*Net Event DurationLessons Learned
diagnosis/response, Diagnosis and ResponseDiagnosis and Response
lessons learned, Lessons Learned
results, Results
targeting response time, Targeting
START-SQL_TRACE-IN_SESSION event, Activating trace from a third-party session
START_TRACE_IN_SESSION package, Activating trace from a third-party session
Statspack utility, idle events omitted from reports, unaccounted-for
strace program, How Software Measures Itself
symmetric multiprocessing (SMP), Service channels, utilization, and stability
sys call transition, The sys call Transition
systems, Glossary
busy, queueing on, Perspective
major consumer of resources, A Better Way to Optimize
stuck, finding where, Finding Where a System Is Stuck

T

targeting, Targeting revisited
diagnostic data, Targeting the Right Diagnostic DataFor More Information
performance improvement activity, Targeting the Right Improvement ActivityForecasting Project Risk
response time
-based performance improvement methods, Why targeting is vital
large CPU service duration, TargetingTargeting
large read event duration, Targeting
large SQL*Net event duration, Targeting
misleading systemwide data, Targeting
resource profiles as first step, Beyond the Resource Profile
user actions, Targeting the Right User ActionsSpecification Over-Constraint
technology stack, Sequence Diagram, Glossary
supply/demand in, Supply and demand in the technology stack
testing your system, importance of, Measurement Resolution
time-scoping
difficulty of, with Oracle fixed view data, Difficulty of Proper Time-Scoping
errors at trace activation, Time Scope Errors at Trace ActivationExcess database call data at trace activation
timestamps, SQL trace data files, Session identification and timestamps
timing statistics
Oracle kernel, Oracle Kernel Timings
unaccounted-for time, Unaccounted-for TimeTrace Writing
SQL trace data, Oracle Time Units
tkprof utility
analyzing SQL statements, Targeting
erroneous results from, Row source operations
tools for response time analysis, Tools for Analyzing Response TimeResource Profile, Responding to the Diagnosis
resource profiles, Resource ProfileResource Profile
sequence diagrams, Sequence DiagramSequence Diagram
total system utilization, Service channels, utilization, and stability
TRACEFILE_IDENTIFIER attribute, Finding Your Trace File(s)
tracing
someone else’s source code, Tracing Someone Else’s Source CodeActivating trace from a third-party session
your own source code, Tracing Your Own Source CodeTracing Your Own Source Code
traffic intensity, Service channels, utilization, and stability, Glossary
transaction end markers, SQL trace data files, Transaction end markers
trial-and-error performance-tuning method, “You’re Doing It Wrong”, Perspective
truss program, How Software Measures Itself
tusc program, How Software Measures Itself

U

user actions, Glossary
creating performance improvement project specifications
determining who executes user actions, Determining Who Will Execute Each Action and When
identifying user actions, User ActionIdentifying the Right User Actions and Contexts
prioritizing user actions, Prioritizing the User Actions
focusing on, User Action Focus
long-running, collecting performance diagnostic data for, Long-Running User Actions
sequence diagrams and, Sequence Diagram
targeting the right, Targeting the Right User ActionsSpecification Over-Constraint
user mode, Operating System Process Management
users, actions of (see user actions)
USER_DUMP_DEST parameter, Finding Your Trace File(s)
directory, Trace Writing
MTS and, Oracle Multi-Threaded Server

V

V$ data (see Oracle fixed view data)
V$EVENT_NAME fixed view, The Oracle “Wait Interface”
V$FIXED_VIEW_DEFINITION fixed view, Finding a Fixed View Definition
V$SESSION_EVENT fixed view, V$SESSION_EVENT, The Oracle “Wait Interface”
V$SESSION_WAIT fixed view, V$SESSION_WAITV$SESSION_WAIT, The Oracle “Wait Interface”
early documentation for, V$SESSION_WAIT
V$SESSTAT fixed view, V$SESSTAT
V$SESS_IO fixed view, V$SESS_IO
V$SQL fixed view, V$SQLV$SQL
V$SYSSTAT fixed view, V$SYSSTAT
V$SYSTEM_EVENT fixed view, V$SYSTEM_EVENT, The Oracle “Wait Interface”
viewing waits systemwide, Viewing Waits System-WideTargeting revisited
denominator problem, The denominator problemThe denominator problem
infinite capacity for waiting, Infinite capacity for waiting
targeting as key to efficient improvement, Targeting revisited

W

wait events, Response Time Components, unaccounted-for
(see also idle events response time, components)
attributing, Glossary
buffer busy, “Too Much Data” Is Really Not Enough Data, Logical I/O Optimization
CPU service, Response Time Focus, “Too Much Data” Is Really Not Enough Data, Approximating a Session’s Resource Profile, The denominator problem, Queueing Visualized, Response Time Components, CPU service
db file scattered read, “Too Much Data” Is Really Not Enough Data, Difficulty of Proper Time-Scoping, The denominator problem, unaccounted-for
db file sequential read, Forward Attribution for Within-Call Events, Oracle Kernel Timings, Infinite capacity for waiting
enqueue, V$SESSION_WAIT, Approximating a Session’s Resource Profile
free buffer, Logical I/O Optimization, Write Optimization
latch free, User Action Focus, “Too Much Data” Is Really Not Enough Data, Difficulty of Proper Action-Scoping, How to Tell When Your Work Is Done, Logical I/O Optimization, Parse Optimization, Case 1: Misled by System-Wide Data
log file switch completion, Finding Where a System Is Stuck, Logical I/O Optimization
log file sync, V$SESSION_WAIT, Responding to the Diagnosis, Logical I/O Optimization
pmon timer, The “idle events” problem, Idle events in background sessions
PX Deq Credit: need buffer, unaccounted-for
PX events, Responding to large response time contributions from other events
rdbms ipc message, The “idle events” problem, The denominator problem, Idle events in background sessions
single-task message, Responding to large SQL*Net response time contributions
smon timer, The “idle events” problem, Idle events in background sessions
SQL trace data files, Wait events
SQL*Net message from client, Response Time Focus, Forward Attribution for Between-Call Events, Missing wait event data at trace activation, Approximating a Session’s Resource Profile, The “idle events” problemThe denominator problem, No Event Is Inherently “Unimportant”, No Event Is Inherently “Unimportant”, Parse Optimization, Targeting, Targeting
SQL*Net message to client, No Event Is Inherently “Unimportant”, No Event Is Inherently “Unimportant”
SQL*Net more data from client, Responding to large SQL*Net response time contributions, Parse Optimization, Diagnosis and ResponseDiagnosis and Repair
START_SQL_TRACE_IN_SESSION, Activating trace from a third-party session
targeting as key to efficient improvement, Targeting revisited
tools for finding information about, Responding to the Diagnosis
what you should know, Responding to the Diagnosis
write complete, Logical I/O Optimization
“wait interface”
Oracle fixed view data and, The Oracle “Wait Interface”
queueing theory vs., Queueing Theory Versus the “Wait Interface”Differences in queueing theory notation
differences in queueing theory notation, Differences in queueing theory notation
Oracle wait times, Oracle wait times
walking the clock, Walking the ClockClock Walk Formulas
formulas, Clock Walk Formulas
wasteful work, eliminating, Eliminating Wasteful WorkWrite Optimization
optimizing
LIO, Logical I/O OptimizationHow to optimize SQL
parse, Parse OptimizationParse Optimization
SQL, How to optimize SQL
write operations, Write Optimization
why problems commonly occur with LIO, Why LIO problems are so common
Windows, oraus.msg and, Activating Extended SQL Trace
write complete events, Logical I/O Optimization
write optimization, Write Optimization

Y

Yamaguchi, Shari, Responding to the Diagnosis
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset