I am delighted to share that my new Oracle book, Oracle Database Performance Tuning with AWR, ASH and ADDM, will be published by Apress.

For readers interested in the book, I will share a series of previews here. This second post covers the section “Table of Contents“

Table of Contents

Front Matter

  • About the Author (p. viii)
  • About the Technical Reviewer (p. ix)
  • Acknowledgments (p. xi)
  • Introduction (p. xii)

PART I: ASH (p. 1)

CHAPTER 1: ASH Fundamentals (p. 14)

  • The ASH Mechanism (p. 14)
  • Advantages of ASH (p. 17)
  • Hidden Parameters That Control ASH Behavior (p. 20)
  • Licensing for AWR, ASH, and ADDM (p. 21)
  • Summary (p. 26)

CHAPTER 2: ASH Report (p. 26)

  • Generating an ASH Report (p. 26)
  • An Example of Interpreting an ASH Report (p. 30)
  • Summary (p. 37)

CHAPTER 3: Querying Raw ASH Data with SQL (p. 37)

  • ASH Data Capture Mechanism (p. 38)
  • Identifying Top Entities (p. 44)
  • Summarizing Session Activity across Any Dimensions (p. 51)
  • Creating Timelines of Anything with Oracle ASH (p. 56)
  • Answering Ad Hoc Questions (p. 62)
  • Summary (p. 69)

CHAPTER 4: ASH in Action: Practical Use Cases (p. 69)

  • Pinpointing the Slowest Step in an SQL Execution Plan (p. 70)
  • Monitoring SQL Execution Plan Changes (p. 74)
  • Estimating SQL Runtime and Detecting Outliers (p. 76)
  • Determining Whether the Database Is Responsible for Slow Response (p. 86)
  • Tracing the Session Blocking Chain (p. 89)
  • Diagnosing an RMAN Job Slowdown (p. 98)
  • Summary (p. 101)

PART II: AWR (p. 101)

CHAPTER 5: AWR Fundamentals (p. 101)

  • The AWR Mechanism (p. 101)
  • AWR Snapshots (p. 103)
  • Managing AWR in Multitenant Environments (p. 113)
  • Generating AWR Reports (p. 116)
  • DB Time (p. 126)
  • Average Active Sessions (p. 129)
  • Summary (p. 134)

CHAPTER 6: How to Read an AWR Report (p. 135)

  • Report Header (p. 136)
  • Load Profile (p. 140)
  • Instance Efficiency Percentages (p. 154)
  • Top 10 Foreground Events (p. 157)
  • Wait Classes by Total Wait Time (p. 168)
  • I/O Profile (p. 174)
  • Time Model Statistics (p. 180)
  • SQL Statistics (p. 183)
  • Summary (p. 194)

CHAPTER 7: Querying Raw AWR Data with SQL (p. 195)

  • Understanding Raw AWR Data (p. 196)
  • Monitoring Database Activity with System Statistics (p. 199)
  • Analyzing Service-Level Statistics (p. 210)
  • Gauging System Performance with Metrics (p. 217)
  • Analyzing SQL Performance across Snapshots (p. 227)
  • Monitoring I/O Activity (p. 240)
  • Tracking Tablespace Usage and Growth (p. 254)
  • Summary (p. 259)

PART III: ADDM (p. 259)

CHAPTER 8: Automating Diagnostics with ADDM (p. 259)

  • Working with AWR and ASH (p. 260)
  • ADDM Reports (p. 262)
  • Mining Hidden Treasures from ADDM Views (p. 275)
  • Summary (p. 286)

PART IV: USING THE TRIAD IN ACTION (p. 286)

CHAPTER 9: How Oracle Uses CPU (p. 286)

  • Most IT Pros Read CPU Metrics Wrong (p. 287)
  • Why Does CPU Utilization Lie to You? (p. 294)
  • How Oracle Calculates CPU Metrics (p. 300)
  • Detecting CPU Noisy Neighbors (p. 305)
  • How to Detect CPU Starvation and Evaluate Its Severity (p. 310)
  • Summary (p. 317)

CHAPTER 10: What’s the AWR Report Trying to Tell Us? (p. 317)

  • Assessing Overall I/O Latency with Little’s Law (p. 318)
  • Estimating Storage Response Time with Synchronous Single-Block Reads Latency (p. 319)
  • Are Your Online Redo Logs Adequately Sized? (p. 324)
  • Does Your Application Properly Use Bind Variables? (p. 327)
  • Is There Excessive Rollback Activity in the Database? (p. 341)
  • Is Your PGA Size Set Correctly? (p. 345)
  • Do You Really Need RAC? (p. 351)
  • Is Your Connection Pool Properly Sized? (p. 363)
  • Summary (p. 372)

CHAPTER 11: Real-World Case Studies (p. 372)

  • Slow Standby Database Dragging Down the Primary (p. 373)
  • Finding the Contended Rows Behind enq: TX – row lock contention (p. 379)
  • Zeroing In: Tracing the Exact Moment of Performance Regression (p. 383)
  • Finding the Cause of Severe “Buffer busy wait” (p. 390)
  • When the Average Lies: Detecting Skewed I/O Latency (p. 394)
  • Why 90% Idle CPU Became a Bottleneck (p. 398)
  • Summary (p. 409)

Leave a comment

I’m Yuan

Welcome to the blog of a database performance maven. Feel free to contact me to share and discuss database knowledge.

My Oracle Book

My 26 Oracle Certifications

A screenshot from certview.oracle.com

My MySQL Book

MySQL 8.0 Operations and Optimization

Let’s connect