SlideShare a Scribd company logo
1 of 65
Download to read offline
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.1
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 of the corporate presentation template2
ASH Deep Dive: Advanced
Performance Analysis Tips
John Beresniewicz, Oracle America
Kellyn Pot’vin, Enkitec
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.3
Safe Harbor Statement
The following is intended to outline our general product direction.
It is intended for information purposes only, and may not be
incorporated into any contract.
It is not a commitment to deliver any material, code, or functionality,
and should not be relied upon in making purchasing decisions.
The development, release, and timing of any features or functionality
described for Oracle s products remains at the sole discretion of
Oracle.
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.4
Program Agenda
  What is ASH?
  How does ASH work?
  How do we use ASH data?
  Enterprise Manager: ASH Analytics
  ASH in Action: Kellyn Pot’vin
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.5
What is ASH?
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.6
What is ASH?
  Time-based sampling of foreground session state
–  Highly multi-dimensional view of database activity and therefore DB Time
  Observations of specific values of the (DB Time/time) function
–  This function is called: Average Active Sessions
An instrumentation mechanism that actualizes an important concept
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.7
Important Properties of ASH
  Samples represent “snapshots” of session activity at “same time”
–  Not really true since using latchless mechanism
  Sampling is time independent of session activity
–  Important since otherwise sessions may be over or under-sampled
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.8
Active Session Sampling
Time-based captures of state information for active sessions
Sample_t1
Session 1
Session 2
Session 3
Sample_t2 Sample_t3
Session Time State Wait Class SQL_ID Object
t1 1 ON CPU null 53qkkf6yzc2x0 null
t1 2 WAITING User I/O 0naxkcasaz162 EMP
t1 3 WAITING User I/O cs4qrt8kr3uhx EMP
t2 3 WAITING Application 4uh6zm2wg03mx DEPT
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.9
ASH is Highly Multi-dimensional
Most of these represent useful investigative paths in some context
desc v$active_session_history
Name Null Type
------------------------------ -------- ----------------
SAMPLE_ID NUMBER
SAMPLE_TIME TIMESTAMP(3)
IS_AWR_SAMPLE VARCHAR2(1)
SESSION_ID NUMBER
SESSION_SERIAL# NUMBER
SESSION_TYPE VARCHAR2(10)
FLAGS NUMBER
USER_ID NUMBER
.
.
.
93 rows selected
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.10
SQL Dimensions
SQL_ID VARCHAR2(13)
IS_SQLID_CURRENT VARCHAR2(1)
SQL_CHILD_NUMBER NUMBER
SQL_OPCODE NUMBER
SQL_OPNAME VARCHAR2(64)
FORCE_MATCHING_SIGNATURE NUMBER
TOP_LEVEL_SQL_ID VARCHAR2(13)
TOP_LEVEL_SQL_OPCODE NUMBER
SQL_PLAN_HASH_VALUE NUMBER
SQL_PLAN_LINE_ID NUMBER
SQL_PLAN_OPERATION VARCHAR2(30)
SQL_PLAN_OPTIONS VARCHAR2(30)
SQL_EXEC_ID NUMBER
SQL_EXEC_START DATE
PLSQL_ENTRY_OBJECT_ID NUMBER
PLSQL_ENTRY_SUBPROGRAM_ID NUMBER
PLSQL_OBJECT_ID NUMBER
PLSQL_SUBPROGRAM_ID NUMBER
QC_INSTANCE_ID NUMBER
QC_SESSION_ID NUMBER
QC_SESSION_SERIAL# NUMBER
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.11
Wait Event Dimensions
EVENT VARCHAR2(64)
EVENT_ID NUMBER
EVENT# NUMBER
SEQ# NUMBER
P1TEXT VARCHAR2(64)
P1 NUMBER
P2TEXT VARCHAR2(64)
P2 NUMBER
P3TEXT VARCHAR2(64)
P3 NUMBER
WAIT_CLASS VARCHAR2(64)
WAIT_CLASS_ID NUMBER
WAIT_TIME NUMBER
SESSION_STATE VARCHAR2(7)
TIME_WAITED NUMBER
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.12
Application Dimensions
Instrumented applications can benefit greatly
SERVICE_HASH NUMBER
PROGRAM VARCHAR2(48)
MODULE VARCHAR2(48)
ACTION VARCHAR2(32)
CLIENT_ID VARCHAR2(64)
MACHINE VARCHAR2(64)
PORT NUMBER
ECID VARCHAR2(64)
CONSUMER_GROUP_ID NUMBER
TOP_LEVEL_CALL# NUMBER
TOP_LEVEL_CALL_NAME VARCHAR2(64)
CONSUMER_GROUP_ID NUMBER
XID RAW(8)
REMOTE_INSTANCE# NUMBER
TIME_MODEL NUMBER
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.13
How does ASH work?
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.14
ASH Key Architecture Concepts
  In-memory ASH sampling:
–  Dedicated background process: MMNL
–  Circular SGA memory buffer: one writer; many readers
–  Lean and robust mechanism: no locking or latching
–  Default 1000ms (1 sec) sampling interval
  ASH sub-sampling to disk:
–  Flush to AWR with snapshot or on emergency flush
–  Default: 1-in-10 of the 1-sec samples are persisted
–  Future: continuous sub-sampling
Session activity sampled efficiently into memory and onto disk
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.15
•  MMNL writes to ASH
circular buffer one way
•  Readers of V$ASH start at
current write pointer
•  Readers proceed in
opposite direction of
MMNL through buffer
•  Stop when current
sample_id > last read
sample_id
•  SELECT from V$ASH
returned recent-last order
Reading / Writing in Opposite Directions
MMNL
SALLY
start
SALLY
finish
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.16
Sampling Pseudo-code
(lean and mean, but there is a hole)
1) FOR ALL SESSION STATE OBJECTS
2) IS SESSION CONNECTED?
NO => NEXT SESSION
YES:
3) IS SESSION ACTIVE?
NO => NEXT SESSION
YES:
4) MEMCPY SESSION STATE OBJ
5) CHECK CONSISTENCY OF COPY WITH LIVE SESSION
6) IS COPY CONSISTENT?
YES:
WRITE ASH ROW FROM COPY
NO:
IF FIRST COPY, REPEAT STEPS 4-6
ELSE => NEXT SESSION (NO ASH ROW WRITTEN)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.17
Default Settings
  Sampling interval = 1000ms = 1 sec
  Disk filter ratio = 10 = 1 in 10 samples written to AWR
  ASH buffer size:
–  Min( Max (5% shared pool, 2% SGA), 2MB per CPU)
–  Absolute Max of 256MB
These are carefully chosen for maximum general utility
NOTE: the MMNL sampler session is not sampled
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.18
Control Parameters
  _ash_size : size of ASH buffer in bytes
–  K/M notation works (e.g. 200M)
  _ash_sampling_interval : in milliseconds
–  Min = 100, Max = 10,000
  _ash_disk_filter_ratio : every Nth sample to AWR
–  MOD(sample_id, N) = 0 where N=disk filter ratio
  _sample_all : samples idle and active sessions
(geeks want underscores)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.19
V$ASH_INFO
New in 11.2 (but unfortunately un-documented)
desc v$ash_info
Name Null Type
------------------------------ -------- --------------
TOTAL_SIZE NUMBER
FIXED_SIZE NUMBER
SAMPLING_INTERVAL NUMBER
OLDEST_SAMPLE_ID NUMBER
OLDEST_SAMPLE_TIME TIMESTAMP(9)
LATEST_SAMPLE_ID NUMBER
LATEST_SAMPLE_TIME TIMESTAMP(9)
SAMPLE_COUNT NUMBER
SAMPLED_BYTES NUMBER
SAMPLER_ELAPSED_TIME NUMBER
DISK_FILTER_RATIO NUMBER
AWR_FLUSH_BYTES NUMBER
AWR_FLUSH_ELAPSED_TIME NUMBER
AWR_FLUSH_COUNT NUMBER
AWR_FLUSH_EMERGENCY_COUNT NUMBER
Compute buffer time
window size
Compute average
time per sample
DROPPED_SAMPLE_COUNT NUMBER
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.20
ASH is Robust when CPU-constrained
1.  ASH sampler is very efficient and does not lock
–  Should complete a sample within a single CPU slice
2.  After sampling, the sampler computes next scheduled sample time
and sleeps until then
3.  Upon scheduled wake-up, it waits for CPU (runq) and samples again
–  CPU bound sample times are shifted by one runq but intervals stay close
to 1 second
(These are precisely times when reliable data is necessary)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.21
ASH Sampler and Run-queue
Sampling interval is consistent under CPU-starvation
S_t0 S_t2S_t1
Run queue Run queue
A_t1A_t0
Run queue
A_t2
Sleep until next
time
Sleep until next
Sample Sample Sample
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.22
The ASH “Fix-up”
  ASH column values may be unknown at sampling time
–  TIME_WAITED: session is still waiting
–  PLAN_HASH: session is still optimizing SQL
–  GC events: event details unknown at event initiation
  ASH “fixes up” data during subsequent sampling
–  TIME_WAITED fixed up in first sample after event completes
–  Long events: last sample gets correct TIME_WAITED (all others 0)
  Querying V$ASH may return un-fixed rows
–  Should not be a problem generally
A unique and very important feature
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.23
How do we use ASH data?
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.24
How do we use ASH data?
  Estimate DB Time and Average Active Sessions
–  For specific time intervals
–  Decomposed and filtered many ASH dimensions
  Investigate tuning opportunities
–  Excesses of DB Time in tune-able areas
  ASH Forensics
–  Figure out “what happened to SID?”
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.25
ASH Math: Estimating DB Time from ASH
  Each ASH row counts for :INTERVAL of active session time
  Default for :INTERVAL is 1 second (1000 ms)
  Therefore COUNT(*) = DB Time in seconds
  This is what I call “ASH Math”
  An estimate because it is computed over a sample of true reality
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.26
ASH Math and DB Time
The count of sampled rows is an estimate (unbiased) of DB time
Estimate DB TimeCOUNT (ASH SAMPLED ROWS)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.27
Computing Average Active Sessions
  AAS = DELTA(DB TIME) / DELTA(elapsed_time)
–  Over some time interval(s) of sampled workload
  SUM(:sampling_interval) / [ MAX(sample_time) – MIN(sample_time) ]
–  Normalized to common time units, e.g. seconds
  COUNT(*) / [ (MAX(sample_id) – MIN(sample_id) ]
–  This works for default sampling interval and one time interval
The centerpiece measure for EM Activity charts and ASH Analytics
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.28
Bad ASH Math and TIME_WAITED
These mistakes are very common and very wrong
AVG(TIME_WAITED)
This does not estimate average event latencies because
sampling is biased toward longer events
SUM(TIME_WAITED)
This does not compute total wait time in the database since ASH
does not contain all waits.
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.29
ASH Timing for Nano-operations
  Some important operations are still too frequent and short-lived for timing
–  E.g. no wait event for “bind” operations
  A session-level bit vector is updated in binary fashion before/after such
operations
–  Much cheaper than timer calls
  The session bit vector is sampled into ASH
  “ASH Math” used to estimate time spent in un-timed transient operations
Magic trick: timing what cannot be timed
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.30
“ON CPU” and ASH
  ASH session status ‘ON CPU’ is derived, not observed
–  Session is in a database call
–  Session is NOT in a wait event (idle or non-idle)
  Un-instrumented waits => ‘ON CPU’
–  These are bugs and should be rare, but have happened
  Sessions on run queue may be ‘WAITING’ or ‘ON CPU’
–  Depends on state prior to going onto run queue
ASH CPU and Time Model CPU don’t always agree
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.31
Enterprise Manager:
ASH Analytics
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.32
  Display AAS by wait class over time
  5-minute Time Selector for details
  Top SQL and Top Sessions
–  Broken down by wait class
–  Additional fact columns
  User-selectable Top dimension
Average Active Sessions
Origin: EM Top Activity
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.33
  Top Lists not graphically comparable
–  “% Activity” depends on
sample count
  Time Series by Wait Class only
–  What about SQL, User, etc?
  Lots of wasted visual real-estate
Design Issues
Top Activity
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.34
EM ASH Analytics
  Logical extension of EM Top Activity page
  Average Active Sessions (AAS) over time
–  Decomposed by user-selectable ASH dimension (“parent” dimension)
  “Top” Lists by two other user-selectable ASH dimensions
–  With breakdown by “parent” dimension
  ASH Analytics Loadmap
–  AAS decomposed into Treemap of up to 3 ASH dimensions
–  Investigate skew and/or balance of load over dimension combinations
–  Investigate possible cause-effect relationships
Flexible multi-dimensional ASH-based performance analysis tool
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.35
  Load (AAS) over time with time
selector
–  Selected time broken down
by ASH dimension
  2 “Top” lists by other dimensions
–  Broken down by parent
dimension also
  4 Charts with a shared dimension
–  Extremely powerful
EM ASH Analytics
Average Active Sessions
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.36
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.37
  Space-filling, scales well
  Decompose load (AAS) by
multiple ASH dimensions
  Hierarchical decomposition
  Some hierarchies natural,
others investigative
EM ASH Analytics: Loadmap
ASH Treemap Visualization
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.38
Graphic Section Divider
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.39
Tanel Poder
Consultant,
Enkitec
THIRD PARTY
COMPANY LOGO
Active Session History has radically changed the
performance diagnosis of Oracle Databases, by design.
With ASH you have detailed performance data always and
immediately available… This translates to much faster
problem solution times and also more accurate diagnosis…
About Us 
I am… 
•  Oracle ACE Director 
•  Sr. Technical Consultant, Enkitec 
Enkitec is… 
  Oracle Platinum Partner specializing in: 
  Oracle Exadata   
  Oracle Database, including RAC 
  Oracle Database Performance Tuning 
  Oracle APEX and so much more! 
The Consultant’s Challenge 
  “Hybrid” workload environment: 
  Transactional, ETL, Reporting 
  Upgraded to 11g in previous year 
  Consistent degradation since upgrade 
  ETL down from 400 “businesses” per hour to 2‐300 
  ETL code review and enhancement in works  
  “What can you do for us now outside of that effort?” 
Goal:  Load 700 businesses per hour!! 
Oracle Tools of the Trade 
  AWR Reports: 
  First offered by onsite DBA, always available 
  “Averaging” effect of large snapshot times hiding issues 
  ASH Reports: 
  Help identify problem times with finer granularity 
  Target reports to problem times, gives clearer picture 
  Enterprise Manager 12c  
  Used to enhance ASH findings and do further research 
  Top Activity, SQL Details, ASH Analytics 
Why AWR Wasn’t the Answer 
  The “problem” was not visible 
  We expect to use CPU and to do I/O 
  Did not want to alter AWR snapshot timing but 
needed finer‐grained time view 
  Problem not related to workload change or data 
volumes, ETL just degrading over time 
Why ASH Was… 
  Exposed competing PL/SQL procedures 
  More definitive breakdown of data 
  Zero‐in on problem time 
  Session level information 
  Interested in impacts not frequencies 
ASH Report Targets CPU Spike 
  Breakdown by the minute, by interval 
CPU spikes in four 
minute period 
ASH Top SQL Exposes OddiFes 
  STATS_ADMIN?? 
  SQL Analyze?? 
}  What does 
this SQL 
Originate 
from? 
EM Exposes problem SQL Profiles 
  EM Search SQL found multiple plans for critical ETL 
statements with vastly different performance (?) 
  Click‐through bad plan to expose existence of SQL Profile 
  Oops, profiles are supposed to fix plans! 
What Caused This? 
  High profile environment, very sensitive to change 
  Stats collection using custom wrapper over deprecated  
Oracle package dating back prior to 9i (DBMS_ADMIN) 
  Also using 11g stats collection (DBMS_STATS) 
  DBMS_ADMIN was deprecated for a reason! 
  Analysis of object stats providing poor data to CBO 
  Other automated maintenance window tasks were 
expensive and competing for resources at exactly the 
wrong time (i.e. ETL time) 
Steps to Correct 
  Migrated to DBMS_STATS for all stats collection 
   Disable jobs using custom wrapper over 
DBMS_ADMIN 
  Removed SQL Profiles impacting bad ETL plans 
  Additional steps taken: 
  Migrated select b‐tree indexes to bitmap indexes, also 
much needed disk space. 
  Continued to review ASH, AWR and Session SQL 
performance for improvement. 
Victory within reach… 
  Throughput improvement after Stats gathering 
changes  
Where They Are Today… 
  With further physical and logical tuning: 
750 !! 
GOAL 
ACHIEVED 
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.52
Graphic Section Divider
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.53
A SHORT SEQUENCE OF USING THE
TOOL ON A REAL SYSTEM
JB’S ASH ANALYTICS ADVENTURE
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.54
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.55
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.56
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.57
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.58
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.59
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.60
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.61
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.62
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.63
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.64
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.65

More Related Content

What's hot

【Maclean liu技术分享】拨开oracle cbo优化器迷雾,探究histogram直方图之秘 0321
【Maclean liu技术分享】拨开oracle cbo优化器迷雾,探究histogram直方图之秘 0321【Maclean liu技术分享】拨开oracle cbo优化器迷雾,探究histogram直方图之秘 0321
【Maclean liu技术分享】拨开oracle cbo优化器迷雾,探究histogram直方图之秘 0321maclean liu
 
Oracle Open World Thursday 230 ashmasters
Oracle Open World Thursday 230 ashmastersOracle Open World Thursday 230 ashmasters
Oracle Open World Thursday 230 ashmastersKyle Hailey
 
Whitepaper: Mining the AWR repository for Capacity Planning and Visualization
Whitepaper: Mining the AWR repository for Capacity Planning and VisualizationWhitepaper: Mining the AWR repository for Capacity Planning and Visualization
Whitepaper: Mining the AWR repository for Capacity Planning and VisualizationKristofferson A
 
Adaptive Query Optimization
Adaptive Query OptimizationAdaptive Query Optimization
Adaptive Query OptimizationAnju Garg
 
AWR Ambiguity: Performance reasoning when the numbers don't add up
AWR Ambiguity: Performance reasoning when the numbers don't add upAWR Ambiguity: Performance reasoning when the numbers don't add up
AWR Ambiguity: Performance reasoning when the numbers don't add upJohn Beresniewicz
 
OTN tour 2015 AWR data mining
OTN tour 2015 AWR data miningOTN tour 2015 AWR data mining
OTN tour 2015 AWR data miningAndrejs Vorobjovs
 
New Tuning Features in Oracle 11g - How to make your database as boring as po...
New Tuning Features in Oracle 11g - How to make your database as boring as po...New Tuning Features in Oracle 11g - How to make your database as boring as po...
New Tuning Features in Oracle 11g - How to make your database as boring as po...Sage Computing Services
 
Create your oracle_apps_r12_lab_with_less_than_us1000
Create your oracle_apps_r12_lab_with_less_than_us1000Create your oracle_apps_r12_lab_with_less_than_us1000
Create your oracle_apps_r12_lab_with_less_than_us1000Ajith Narayanan
 
AWR DB performance Data Mining - Collaborate 2015
AWR DB performance Data Mining - Collaborate 2015AWR DB performance Data Mining - Collaborate 2015
AWR DB performance Data Mining - Collaborate 2015Yury Velikanov
 
DBA Commands and Concepts That Every Developer Should Know
DBA Commands and Concepts That Every Developer Should KnowDBA Commands and Concepts That Every Developer Should Know
DBA Commands and Concepts That Every Developer Should KnowAlex Zaballa
 
MySQL EXPLAIN Explained-Norvald H. Ryeng
MySQL EXPLAIN Explained-Norvald H. RyengMySQL EXPLAIN Explained-Norvald H. Ryeng
MySQL EXPLAIN Explained-Norvald H. Ryeng郁萍 王
 
Whitepaper: Where did my CPU go?
Whitepaper: Where did my CPU go?Whitepaper: Where did my CPU go?
Whitepaper: Where did my CPU go?Kristofferson A
 
Oracle Data redaction - GUOB - OTN TOUR LA - 2015
Oracle Data redaction - GUOB - OTN TOUR LA - 2015Oracle Data redaction - GUOB - OTN TOUR LA - 2015
Oracle Data redaction - GUOB - OTN TOUR LA - 2015Alex Zaballa
 
Deadlock and memory management -- Operating System
Deadlock and memory management -- Operating SystemDeadlock and memory management -- Operating System
Deadlock and memory management -- Operating SystemEktaVaswani2
 
Tuning SQL for Oracle Exadata: The Good, The Bad, and The Ugly Tuning SQL fo...
 Tuning SQL for Oracle Exadata: The Good, The Bad, and The Ugly Tuning SQL fo... Tuning SQL for Oracle Exadata: The Good, The Bad, and The Ugly Tuning SQL fo...
Tuning SQL for Oracle Exadata: The Good, The Bad, and The Ugly Tuning SQL fo...Enkitec
 
Drools & jBPM Info Sheet
Drools & jBPM Info SheetDrools & jBPM Info Sheet
Drools & jBPM Info SheetMark Proctor
 

What's hot (20)

【Maclean liu技术分享】拨开oracle cbo优化器迷雾,探究histogram直方图之秘 0321
【Maclean liu技术分享】拨开oracle cbo优化器迷雾,探究histogram直方图之秘 0321【Maclean liu技术分享】拨开oracle cbo优化器迷雾,探究histogram直方图之秘 0321
【Maclean liu技术分享】拨开oracle cbo优化器迷雾,探究histogram直方图之秘 0321
 
Oracle Open World Thursday 230 ashmasters
Oracle Open World Thursday 230 ashmastersOracle Open World Thursday 230 ashmasters
Oracle Open World Thursday 230 ashmasters
 
Oracle analysis 101_v1.0_ext
Oracle analysis 101_v1.0_extOracle analysis 101_v1.0_ext
Oracle analysis 101_v1.0_ext
 
Whitepaper: Mining the AWR repository for Capacity Planning and Visualization
Whitepaper: Mining the AWR repository for Capacity Planning and VisualizationWhitepaper: Mining the AWR repository for Capacity Planning and Visualization
Whitepaper: Mining the AWR repository for Capacity Planning and Visualization
 
8 tune tusc
8 tune tusc8 tune tusc
8 tune tusc
 
Adaptive Query Optimization
Adaptive Query OptimizationAdaptive Query Optimization
Adaptive Query Optimization
 
AWR Ambiguity: Performance reasoning when the numbers don't add up
AWR Ambiguity: Performance reasoning when the numbers don't add upAWR Ambiguity: Performance reasoning when the numbers don't add up
AWR Ambiguity: Performance reasoning when the numbers don't add up
 
Rmoug ashmaster
Rmoug ashmasterRmoug ashmaster
Rmoug ashmaster
 
OTN tour 2015 AWR data mining
OTN tour 2015 AWR data miningOTN tour 2015 AWR data mining
OTN tour 2015 AWR data mining
 
New Tuning Features in Oracle 11g - How to make your database as boring as po...
New Tuning Features in Oracle 11g - How to make your database as boring as po...New Tuning Features in Oracle 11g - How to make your database as boring as po...
New Tuning Features in Oracle 11g - How to make your database as boring as po...
 
Create your oracle_apps_r12_lab_with_less_than_us1000
Create your oracle_apps_r12_lab_with_less_than_us1000Create your oracle_apps_r12_lab_with_less_than_us1000
Create your oracle_apps_r12_lab_with_less_than_us1000
 
AWR DB performance Data Mining - Collaborate 2015
AWR DB performance Data Mining - Collaborate 2015AWR DB performance Data Mining - Collaborate 2015
AWR DB performance Data Mining - Collaborate 2015
 
DBA Commands and Concepts That Every Developer Should Know
DBA Commands and Concepts That Every Developer Should KnowDBA Commands and Concepts That Every Developer Should Know
DBA Commands and Concepts That Every Developer Should Know
 
MySQL EXPLAIN Explained-Norvald H. Ryeng
MySQL EXPLAIN Explained-Norvald H. RyengMySQL EXPLAIN Explained-Norvald H. Ryeng
MySQL EXPLAIN Explained-Norvald H. Ryeng
 
Whitepaper: Where did my CPU go?
Whitepaper: Where did my CPU go?Whitepaper: Where did my CPU go?
Whitepaper: Where did my CPU go?
 
Using AWR/Statspack for Wait Analysis
Using AWR/Statspack for Wait AnalysisUsing AWR/Statspack for Wait Analysis
Using AWR/Statspack for Wait Analysis
 
Oracle Data redaction - GUOB - OTN TOUR LA - 2015
Oracle Data redaction - GUOB - OTN TOUR LA - 2015Oracle Data redaction - GUOB - OTN TOUR LA - 2015
Oracle Data redaction - GUOB - OTN TOUR LA - 2015
 
Deadlock and memory management -- Operating System
Deadlock and memory management -- Operating SystemDeadlock and memory management -- Operating System
Deadlock and memory management -- Operating System
 
Tuning SQL for Oracle Exadata: The Good, The Bad, and The Ugly Tuning SQL fo...
 Tuning SQL for Oracle Exadata: The Good, The Bad, and The Ugly Tuning SQL fo... Tuning SQL for Oracle Exadata: The Good, The Bad, and The Ugly Tuning SQL fo...
Tuning SQL for Oracle Exadata: The Good, The Bad, and The Ugly Tuning SQL fo...
 
Drools & jBPM Info Sheet
Drools & jBPM Info SheetDrools & jBPM Info Sheet
Drools & jBPM Info Sheet
 

Similar to OOW13 JB KP ASH Deep Dive

ASH and AWR Performance Data by Kellyn Pot'Vin
ASH and AWR Performance Data by Kellyn Pot'VinASH and AWR Performance Data by Kellyn Pot'Vin
ASH and AWR Performance Data by Kellyn Pot'VinEnkitec
 
Barun_Practical_and_Efficient_SQL_Performance_Tuning
Barun_Practical_and_Efficient_SQL_Performance_TuningBarun_Practical_and_Efficient_SQL_Performance_Tuning
Barun_Practical_and_Efficient_SQL_Performance_TuningVlado Barun
 
active_session_history_oracle_performance.ppt
active_session_history_oracle_performance.pptactive_session_history_oracle_performance.ppt
active_session_history_oracle_performance.pptcookie1969
 
Oracle Performance Tuning DE(v1.2)-part2.ppt
Oracle Performance Tuning DE(v1.2)-part2.pptOracle Performance Tuning DE(v1.2)-part2.ppt
Oracle Performance Tuning DE(v1.2)-part2.pptVenugopalChattu1
 
Analyze database system using a 3 d method
Analyze database system using a 3 d methodAnalyze database system using a 3 d method
Analyze database system using a 3 d methodAjith Narayanan
 
Ash architecture and advanced usage rmoug2014
Ash architecture and advanced usage rmoug2014Ash architecture and advanced usage rmoug2014
Ash architecture and advanced usage rmoug2014John Beresniewicz
 
Getting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentationGetting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentationBerry Clemens
 
50-Tips-for-Boosting-MySQL-Performance-CON2655.pdf
50-Tips-for-Boosting-MySQL-Performance-CON2655.pdf50-Tips-for-Boosting-MySQL-Performance-CON2655.pdf
50-Tips-for-Boosting-MySQL-Performance-CON2655.pdfAsparuhPolyovski2
 
Why is my_oracle_e-biz_database_slow_a_million_dollar_question
Why is my_oracle_e-biz_database_slow_a_million_dollar_questionWhy is my_oracle_e-biz_database_slow_a_million_dollar_question
Why is my_oracle_e-biz_database_slow_a_million_dollar_questionAjith Narayanan
 
Graal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them AllGraal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them AllThomas Wuerthinger
 
DBA 3 year Interview Questions
DBA 3 year Interview QuestionsDBA 3 year Interview Questions
DBA 3 year Interview QuestionsNaveen P
 
MySQL Performance Metrics that Matter
MySQL Performance Metrics that MatterMySQL Performance Metrics that Matter
MySQL Performance Metrics that MatterMorgan Tocker
 

Similar to OOW13 JB KP ASH Deep Dive (20)

ASH and AWR Performance Data by Kellyn Pot'Vin
ASH and AWR Performance Data by Kellyn Pot'VinASH and AWR Performance Data by Kellyn Pot'Vin
ASH and AWR Performance Data by Kellyn Pot'Vin
 
Ash and awr performance data2
Ash and awr performance data2Ash and awr performance data2
Ash and awr performance data2
 
Barun_Practical_and_Efficient_SQL_Performance_Tuning
Barun_Practical_and_Efficient_SQL_Performance_TuningBarun_Practical_and_Efficient_SQL_Performance_Tuning
Barun_Practical_and_Efficient_SQL_Performance_Tuning
 
active_session_history_oracle_performance.ppt
active_session_history_oracle_performance.pptactive_session_history_oracle_performance.ppt
active_session_history_oracle_performance.ppt
 
ASH and AWR on DB12c
ASH and AWR on DB12cASH and AWR on DB12c
ASH and AWR on DB12c
 
Oracle Performance Tuning DE(v1.2)-part2.ppt
Oracle Performance Tuning DE(v1.2)-part2.pptOracle Performance Tuning DE(v1.2)-part2.ppt
Oracle Performance Tuning DE(v1.2)-part2.ppt
 
01 oracle architecture
01 oracle architecture01 oracle architecture
01 oracle architecture
 
Analyze database system using a 3 d method
Analyze database system using a 3 d methodAnalyze database system using a 3 d method
Analyze database system using a 3 d method
 
Ash architecture and advanced usage rmoug2014
Ash architecture and advanced usage rmoug2014Ash architecture and advanced usage rmoug2014
Ash architecture and advanced usage rmoug2014
 
AWR, ASH with EM13 at HotSos 2016
AWR, ASH with EM13 at HotSos 2016AWR, ASH with EM13 at HotSos 2016
AWR, ASH with EM13 at HotSos 2016
 
Getting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentationGetting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentation
 
50-Tips-for-Boosting-MySQL-Performance-CON2655.pdf
50-Tips-for-Boosting-MySQL-Performance-CON2655.pdf50-Tips-for-Boosting-MySQL-Performance-CON2655.pdf
50-Tips-for-Boosting-MySQL-Performance-CON2655.pdf
 
AWR and ASH in an EM12c World
AWR and ASH in an EM12c WorldAWR and ASH in an EM12c World
AWR and ASH in an EM12c World
 
Why is my_oracle_e-biz_database_slow_a_million_dollar_question
Why is my_oracle_e-biz_database_slow_a_million_dollar_questionWhy is my_oracle_e-biz_database_slow_a_million_dollar_question
Why is my_oracle_e-biz_database_slow_a_million_dollar_question
 
Ashawr perf kscope
Ashawr perf kscopeAshawr perf kscope
Ashawr perf kscope
 
Graal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them AllGraal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them All
 
Using AWR for SQL Analysis
Using AWR for SQL AnalysisUsing AWR for SQL Analysis
Using AWR for SQL Analysis
 
Ash and awr deep dive hotsos
Ash and awr deep dive hotsosAsh and awr deep dive hotsos
Ash and awr deep dive hotsos
 
DBA 3 year Interview Questions
DBA 3 year Interview QuestionsDBA 3 year Interview Questions
DBA 3 year Interview Questions
 
MySQL Performance Metrics that Matter
MySQL Performance Metrics that MatterMySQL Performance Metrics that Matter
MySQL Performance Metrics that Matter
 

More from Kellyn Pot'Vin-Gorman

Redgate_summit_atl_kgorman_intersection.pptx
Redgate_summit_atl_kgorman_intersection.pptxRedgate_summit_atl_kgorman_intersection.pptx
Redgate_summit_atl_kgorman_intersection.pptxKellyn Pot'Vin-Gorman
 
SQLSatOregon_kgorman_keynote_NIAIMLEC.pptx
SQLSatOregon_kgorman_keynote_NIAIMLEC.pptxSQLSatOregon_kgorman_keynote_NIAIMLEC.pptx
SQLSatOregon_kgorman_keynote_NIAIMLEC.pptxKellyn Pot'Vin-Gorman
 
Turning ADHD into "Awesome Dynamic Highly Dependable"
Turning ADHD into "Awesome Dynamic Highly Dependable"Turning ADHD into "Awesome Dynamic Highly Dependable"
Turning ADHD into "Awesome Dynamic Highly Dependable"Kellyn Pot'Vin-Gorman
 
Cepta The Future of Data with Power BI
Cepta The Future of Data with Power BICepta The Future of Data with Power BI
Cepta The Future of Data with Power BIKellyn Pot'Vin-Gorman
 
Pass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft ProfessionalPass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft ProfessionalKellyn Pot'Vin-Gorman
 
PASS 24HOP Linux Scripting Tips and Tricks
PASS 24HOP Linux Scripting Tips and TricksPASS 24HOP Linux Scripting Tips and Tricks
PASS 24HOP Linux Scripting Tips and TricksKellyn Pot'Vin-Gorman
 
Power BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle CloudPower BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle CloudKellyn Pot'Vin-Gorman
 
ODTUG Leadership Talk- WIT and Sponsorship
ODTUG Leadership Talk-  WIT and SponsorshipODTUG Leadership Talk-  WIT and Sponsorship
ODTUG Leadership Talk- WIT and SponsorshipKellyn Pot'Vin-Gorman
 
DevOps and Decoys How to Build a Successful Microsoft DevOps Including the Data
DevOps and Decoys  How to Build a Successful Microsoft DevOps Including the DataDevOps and Decoys  How to Build a Successful Microsoft DevOps Including the Data
DevOps and Decoys How to Build a Successful Microsoft DevOps Including the DataKellyn Pot'Vin-Gorman
 

More from Kellyn Pot'Vin-Gorman (20)

Redgate_summit_atl_kgorman_intersection.pptx
Redgate_summit_atl_kgorman_intersection.pptxRedgate_summit_atl_kgorman_intersection.pptx
Redgate_summit_atl_kgorman_intersection.pptx
 
SQLSatOregon_kgorman_keynote_NIAIMLEC.pptx
SQLSatOregon_kgorman_keynote_NIAIMLEC.pptxSQLSatOregon_kgorman_keynote_NIAIMLEC.pptx
SQLSatOregon_kgorman_keynote_NIAIMLEC.pptx
 
Boston_sql_kegorman_highIO.pptx
Boston_sql_kegorman_highIO.pptxBoston_sql_kegorman_highIO.pptx
Boston_sql_kegorman_highIO.pptx
 
Oracle on Azure IaaS 2023 Update
Oracle on Azure IaaS 2023 UpdateOracle on Azure IaaS 2023 Update
Oracle on Azure IaaS 2023 Update
 
IaaS for DBAs in Azure
IaaS for DBAs in AzureIaaS for DBAs in Azure
IaaS for DBAs in Azure
 
Being Successful with ADHD
Being Successful with ADHDBeing Successful with ADHD
Being Successful with ADHD
 
Azure DBA with IaaS
Azure DBA with IaaSAzure DBA with IaaS
Azure DBA with IaaS
 
Turning ADHD into "Awesome Dynamic Highly Dependable"
Turning ADHD into "Awesome Dynamic Highly Dependable"Turning ADHD into "Awesome Dynamic Highly Dependable"
Turning ADHD into "Awesome Dynamic Highly Dependable"
 
PASS Summit 2020
PASS Summit 2020PASS Summit 2020
PASS Summit 2020
 
DevOps in Silos
DevOps in SilosDevOps in Silos
DevOps in Silos
 
Azure Databases with IaaS
Azure Databases with IaaSAzure Databases with IaaS
Azure Databases with IaaS
 
How to Win When Migrating to Azure
How to Win When Migrating to AzureHow to Win When Migrating to Azure
How to Win When Migrating to Azure
 
Securing Power BI Data
Securing Power BI DataSecuring Power BI Data
Securing Power BI Data
 
Cepta The Future of Data with Power BI
Cepta The Future of Data with Power BICepta The Future of Data with Power BI
Cepta The Future of Data with Power BI
 
Pass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft ProfessionalPass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft Professional
 
Taming the shrew Power BI
Taming the shrew Power BITaming the shrew Power BI
Taming the shrew Power BI
 
PASS 24HOP Linux Scripting Tips and Tricks
PASS 24HOP Linux Scripting Tips and TricksPASS 24HOP Linux Scripting Tips and Tricks
PASS 24HOP Linux Scripting Tips and Tricks
 
Power BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle CloudPower BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle Cloud
 
ODTUG Leadership Talk- WIT and Sponsorship
ODTUG Leadership Talk-  WIT and SponsorshipODTUG Leadership Talk-  WIT and Sponsorship
ODTUG Leadership Talk- WIT and Sponsorship
 
DevOps and Decoys How to Build a Successful Microsoft DevOps Including the Data
DevOps and Decoys  How to Build a Successful Microsoft DevOps Including the DataDevOps and Decoys  How to Build a Successful Microsoft DevOps Including the Data
DevOps and Decoys How to Build a Successful Microsoft DevOps Including the Data
 

Recently uploaded

What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 

Recently uploaded (20)

What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 

OOW13 JB KP ASH Deep Dive

  • 1. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.1
  • 2. Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 12 of the corporate presentation template2 ASH Deep Dive: Advanced Performance Analysis Tips John Beresniewicz, Oracle America Kellyn Pot’vin, Enkitec
  • 3. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.3 Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle s products remains at the sole discretion of Oracle.
  • 4. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.4 Program Agenda   What is ASH?   How does ASH work?   How do we use ASH data?   Enterprise Manager: ASH Analytics   ASH in Action: Kellyn Pot’vin
  • 5. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.5 What is ASH?
  • 6. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.6 What is ASH?   Time-based sampling of foreground session state –  Highly multi-dimensional view of database activity and therefore DB Time   Observations of specific values of the (DB Time/time) function –  This function is called: Average Active Sessions An instrumentation mechanism that actualizes an important concept
  • 7. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.7 Important Properties of ASH   Samples represent “snapshots” of session activity at “same time” –  Not really true since using latchless mechanism   Sampling is time independent of session activity –  Important since otherwise sessions may be over or under-sampled
  • 8. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.8 Active Session Sampling Time-based captures of state information for active sessions Sample_t1 Session 1 Session 2 Session 3 Sample_t2 Sample_t3 Session Time State Wait Class SQL_ID Object t1 1 ON CPU null 53qkkf6yzc2x0 null t1 2 WAITING User I/O 0naxkcasaz162 EMP t1 3 WAITING User I/O cs4qrt8kr3uhx EMP t2 3 WAITING Application 4uh6zm2wg03mx DEPT
  • 9. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.9 ASH is Highly Multi-dimensional Most of these represent useful investigative paths in some context desc v$active_session_history Name Null Type ------------------------------ -------- ---------------- SAMPLE_ID NUMBER SAMPLE_TIME TIMESTAMP(3) IS_AWR_SAMPLE VARCHAR2(1) SESSION_ID NUMBER SESSION_SERIAL# NUMBER SESSION_TYPE VARCHAR2(10) FLAGS NUMBER USER_ID NUMBER . . . 93 rows selected
  • 10. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.10 SQL Dimensions SQL_ID VARCHAR2(13) IS_SQLID_CURRENT VARCHAR2(1) SQL_CHILD_NUMBER NUMBER SQL_OPCODE NUMBER SQL_OPNAME VARCHAR2(64) FORCE_MATCHING_SIGNATURE NUMBER TOP_LEVEL_SQL_ID VARCHAR2(13) TOP_LEVEL_SQL_OPCODE NUMBER SQL_PLAN_HASH_VALUE NUMBER SQL_PLAN_LINE_ID NUMBER SQL_PLAN_OPERATION VARCHAR2(30) SQL_PLAN_OPTIONS VARCHAR2(30) SQL_EXEC_ID NUMBER SQL_EXEC_START DATE PLSQL_ENTRY_OBJECT_ID NUMBER PLSQL_ENTRY_SUBPROGRAM_ID NUMBER PLSQL_OBJECT_ID NUMBER PLSQL_SUBPROGRAM_ID NUMBER QC_INSTANCE_ID NUMBER QC_SESSION_ID NUMBER QC_SESSION_SERIAL# NUMBER
  • 11. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.11 Wait Event Dimensions EVENT VARCHAR2(64) EVENT_ID NUMBER EVENT# NUMBER SEQ# NUMBER P1TEXT VARCHAR2(64) P1 NUMBER P2TEXT VARCHAR2(64) P2 NUMBER P3TEXT VARCHAR2(64) P3 NUMBER WAIT_CLASS VARCHAR2(64) WAIT_CLASS_ID NUMBER WAIT_TIME NUMBER SESSION_STATE VARCHAR2(7) TIME_WAITED NUMBER
  • 12. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.12 Application Dimensions Instrumented applications can benefit greatly SERVICE_HASH NUMBER PROGRAM VARCHAR2(48) MODULE VARCHAR2(48) ACTION VARCHAR2(32) CLIENT_ID VARCHAR2(64) MACHINE VARCHAR2(64) PORT NUMBER ECID VARCHAR2(64) CONSUMER_GROUP_ID NUMBER TOP_LEVEL_CALL# NUMBER TOP_LEVEL_CALL_NAME VARCHAR2(64) CONSUMER_GROUP_ID NUMBER XID RAW(8) REMOTE_INSTANCE# NUMBER TIME_MODEL NUMBER
  • 13. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.13 How does ASH work?
  • 14. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.14 ASH Key Architecture Concepts   In-memory ASH sampling: –  Dedicated background process: MMNL –  Circular SGA memory buffer: one writer; many readers –  Lean and robust mechanism: no locking or latching –  Default 1000ms (1 sec) sampling interval   ASH sub-sampling to disk: –  Flush to AWR with snapshot or on emergency flush –  Default: 1-in-10 of the 1-sec samples are persisted –  Future: continuous sub-sampling Session activity sampled efficiently into memory and onto disk
  • 15. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.15 •  MMNL writes to ASH circular buffer one way •  Readers of V$ASH start at current write pointer •  Readers proceed in opposite direction of MMNL through buffer •  Stop when current sample_id > last read sample_id •  SELECT from V$ASH returned recent-last order Reading / Writing in Opposite Directions MMNL SALLY start SALLY finish
  • 16. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.16 Sampling Pseudo-code (lean and mean, but there is a hole) 1) FOR ALL SESSION STATE OBJECTS 2) IS SESSION CONNECTED? NO => NEXT SESSION YES: 3) IS SESSION ACTIVE? NO => NEXT SESSION YES: 4) MEMCPY SESSION STATE OBJ 5) CHECK CONSISTENCY OF COPY WITH LIVE SESSION 6) IS COPY CONSISTENT? YES: WRITE ASH ROW FROM COPY NO: IF FIRST COPY, REPEAT STEPS 4-6 ELSE => NEXT SESSION (NO ASH ROW WRITTEN)
  • 17. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.17 Default Settings   Sampling interval = 1000ms = 1 sec   Disk filter ratio = 10 = 1 in 10 samples written to AWR   ASH buffer size: –  Min( Max (5% shared pool, 2% SGA), 2MB per CPU) –  Absolute Max of 256MB These are carefully chosen for maximum general utility NOTE: the MMNL sampler session is not sampled
  • 18. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.18 Control Parameters   _ash_size : size of ASH buffer in bytes –  K/M notation works (e.g. 200M)   _ash_sampling_interval : in milliseconds –  Min = 100, Max = 10,000   _ash_disk_filter_ratio : every Nth sample to AWR –  MOD(sample_id, N) = 0 where N=disk filter ratio   _sample_all : samples idle and active sessions (geeks want underscores)
  • 19. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.19 V$ASH_INFO New in 11.2 (but unfortunately un-documented) desc v$ash_info Name Null Type ------------------------------ -------- -------------- TOTAL_SIZE NUMBER FIXED_SIZE NUMBER SAMPLING_INTERVAL NUMBER OLDEST_SAMPLE_ID NUMBER OLDEST_SAMPLE_TIME TIMESTAMP(9) LATEST_SAMPLE_ID NUMBER LATEST_SAMPLE_TIME TIMESTAMP(9) SAMPLE_COUNT NUMBER SAMPLED_BYTES NUMBER SAMPLER_ELAPSED_TIME NUMBER DISK_FILTER_RATIO NUMBER AWR_FLUSH_BYTES NUMBER AWR_FLUSH_ELAPSED_TIME NUMBER AWR_FLUSH_COUNT NUMBER AWR_FLUSH_EMERGENCY_COUNT NUMBER Compute buffer time window size Compute average time per sample DROPPED_SAMPLE_COUNT NUMBER
  • 20. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.20 ASH is Robust when CPU-constrained 1.  ASH sampler is very efficient and does not lock –  Should complete a sample within a single CPU slice 2.  After sampling, the sampler computes next scheduled sample time and sleeps until then 3.  Upon scheduled wake-up, it waits for CPU (runq) and samples again –  CPU bound sample times are shifted by one runq but intervals stay close to 1 second (These are precisely times when reliable data is necessary)
  • 21. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.21 ASH Sampler and Run-queue Sampling interval is consistent under CPU-starvation S_t0 S_t2S_t1 Run queue Run queue A_t1A_t0 Run queue A_t2 Sleep until next time Sleep until next Sample Sample Sample
  • 22. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.22 The ASH “Fix-up”   ASH column values may be unknown at sampling time –  TIME_WAITED: session is still waiting –  PLAN_HASH: session is still optimizing SQL –  GC events: event details unknown at event initiation   ASH “fixes up” data during subsequent sampling –  TIME_WAITED fixed up in first sample after event completes –  Long events: last sample gets correct TIME_WAITED (all others 0)   Querying V$ASH may return un-fixed rows –  Should not be a problem generally A unique and very important feature
  • 23. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.23 How do we use ASH data?
  • 24. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.24 How do we use ASH data?   Estimate DB Time and Average Active Sessions –  For specific time intervals –  Decomposed and filtered many ASH dimensions   Investigate tuning opportunities –  Excesses of DB Time in tune-able areas   ASH Forensics –  Figure out “what happened to SID?”
  • 25. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.25 ASH Math: Estimating DB Time from ASH   Each ASH row counts for :INTERVAL of active session time   Default for :INTERVAL is 1 second (1000 ms)   Therefore COUNT(*) = DB Time in seconds   This is what I call “ASH Math”   An estimate because it is computed over a sample of true reality
  • 26. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.26 ASH Math and DB Time The count of sampled rows is an estimate (unbiased) of DB time Estimate DB TimeCOUNT (ASH SAMPLED ROWS)
  • 27. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.27 Computing Average Active Sessions   AAS = DELTA(DB TIME) / DELTA(elapsed_time) –  Over some time interval(s) of sampled workload   SUM(:sampling_interval) / [ MAX(sample_time) – MIN(sample_time) ] –  Normalized to common time units, e.g. seconds   COUNT(*) / [ (MAX(sample_id) – MIN(sample_id) ] –  This works for default sampling interval and one time interval The centerpiece measure for EM Activity charts and ASH Analytics
  • 28. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.28 Bad ASH Math and TIME_WAITED These mistakes are very common and very wrong AVG(TIME_WAITED) This does not estimate average event latencies because sampling is biased toward longer events SUM(TIME_WAITED) This does not compute total wait time in the database since ASH does not contain all waits.
  • 29. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.29 ASH Timing for Nano-operations   Some important operations are still too frequent and short-lived for timing –  E.g. no wait event for “bind” operations   A session-level bit vector is updated in binary fashion before/after such operations –  Much cheaper than timer calls   The session bit vector is sampled into ASH   “ASH Math” used to estimate time spent in un-timed transient operations Magic trick: timing what cannot be timed
  • 30. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.30 “ON CPU” and ASH   ASH session status ‘ON CPU’ is derived, not observed –  Session is in a database call –  Session is NOT in a wait event (idle or non-idle)   Un-instrumented waits => ‘ON CPU’ –  These are bugs and should be rare, but have happened   Sessions on run queue may be ‘WAITING’ or ‘ON CPU’ –  Depends on state prior to going onto run queue ASH CPU and Time Model CPU don’t always agree
  • 31. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.31 Enterprise Manager: ASH Analytics
  • 32. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.32   Display AAS by wait class over time   5-minute Time Selector for details   Top SQL and Top Sessions –  Broken down by wait class –  Additional fact columns   User-selectable Top dimension Average Active Sessions Origin: EM Top Activity
  • 33. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.33   Top Lists not graphically comparable –  “% Activity” depends on sample count   Time Series by Wait Class only –  What about SQL, User, etc?   Lots of wasted visual real-estate Design Issues Top Activity
  • 34. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.34 EM ASH Analytics   Logical extension of EM Top Activity page   Average Active Sessions (AAS) over time –  Decomposed by user-selectable ASH dimension (“parent” dimension)   “Top” Lists by two other user-selectable ASH dimensions –  With breakdown by “parent” dimension   ASH Analytics Loadmap –  AAS decomposed into Treemap of up to 3 ASH dimensions –  Investigate skew and/or balance of load over dimension combinations –  Investigate possible cause-effect relationships Flexible multi-dimensional ASH-based performance analysis tool
  • 35. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.35   Load (AAS) over time with time selector –  Selected time broken down by ASH dimension   2 “Top” lists by other dimensions –  Broken down by parent dimension also   4 Charts with a shared dimension –  Extremely powerful EM ASH Analytics Average Active Sessions
  • 36. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.36
  • 37. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.37   Space-filling, scales well   Decompose load (AAS) by multiple ASH dimensions   Hierarchical decomposition   Some hierarchies natural, others investigative EM ASH Analytics: Loadmap ASH Treemap Visualization
  • 38. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.38 Graphic Section Divider
  • 39. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.39 Tanel Poder Consultant, Enkitec THIRD PARTY COMPANY LOGO Active Session History has radically changed the performance diagnosis of Oracle Databases, by design. With ASH you have detailed performance data always and immediately available… This translates to much faster problem solution times and also more accurate diagnosis…
  • 40. About Us  I am…  •  Oracle ACE Director  •  Sr. Technical Consultant, Enkitec  Enkitec is…    Oracle Platinum Partner specializing in:    Oracle Exadata      Oracle Database, including RAC    Oracle Database Performance Tuning    Oracle APEX and so much more! 
  • 41. The Consultant’s Challenge    “Hybrid” workload environment:    Transactional, ETL, Reporting    Upgraded to 11g in previous year    Consistent degradation since upgrade    ETL down from 400 “businesses” per hour to 2‐300    ETL code review and enhancement in works     “What can you do for us now outside of that effort?”  Goal:  Load 700 businesses per hour!! 
  • 42. Oracle Tools of the Trade    AWR Reports:    First offered by onsite DBA, always available    “Averaging” effect of large snapshot times hiding issues    ASH Reports:    Help identify problem times with finer granularity    Target reports to problem times, gives clearer picture    Enterprise Manager 12c     Used to enhance ASH findings and do further research    Top Activity, SQL Details, ASH Analytics 
  • 43. Why AWR Wasn’t the Answer    The “problem” was not visible    We expect to use CPU and to do I/O    Did not want to alter AWR snapshot timing but  needed finer‐grained time view    Problem not related to workload change or data  volumes, ETL just degrading over time 
  • 44. Why ASH Was…    Exposed competing PL/SQL procedures    More definitive breakdown of data    Zero‐in on problem time    Session level information    Interested in impacts not frequencies 
  • 48. What Caused This?    High profile environment, very sensitive to change    Stats collection using custom wrapper over deprecated   Oracle package dating back prior to 9i (DBMS_ADMIN)    Also using 11g stats collection (DBMS_STATS)    DBMS_ADMIN was deprecated for a reason!    Analysis of object stats providing poor data to CBO    Other automated maintenance window tasks were  expensive and competing for resources at exactly the  wrong time (i.e. ETL time) 
  • 49. Steps to Correct    Migrated to DBMS_STATS for all stats collection     Disable jobs using custom wrapper over  DBMS_ADMIN    Removed SQL Profiles impacting bad ETL plans    Additional steps taken:    Migrated select b‐tree indexes to bitmap indexes, also  much needed disk space.    Continued to review ASH, AWR and Session SQL  performance for improvement. 
  • 52. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.52 Graphic Section Divider
  • 53. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.53 A SHORT SEQUENCE OF USING THE TOOL ON A REAL SYSTEM JB’S ASH ANALYTICS ADVENTURE
  • 54. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.54
  • 55. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.55
  • 56. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.56
  • 57. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.57
  • 58. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.58
  • 59. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.59
  • 60. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.60
  • 61. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.61
  • 62. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.62
  • 63. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.63
  • 64. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.64
  • 65. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.65