Unconference:
 Mining the AWR repository for 
Capacity Planning, Visualization, 
    & other real world stuff
Who am I?
• Karl Arao, Oracle ACE, OCP‐DBA, RHCT
• Solutions Architect / Principal Consultant @ SQL*Wizard
• Blog: http://...
What will I talk about?
DBA_HIST_* tables
My first close encounter
gc block lost




http://karlarao.wordpress.com/2009/06/07/diagnosing-and-resolving-gc-block-lost
Utilization = Requirement / Capacity
Double Y Axis Graph
AWR Scripts
Visualization
Can’t go back in time?
AAS – Average Active Sessions
Kyle Hailey: http://www.perfvision.com/ftp/emea_2010_may/02_AAS.ppt




       Max CPU




 ...
AAS – the Golden Metric
AAS & CPU count as a yardstick for a possible performance problem (I suggest reading Kyle's 
   st...
awr_topevents.sql
Textual trends
AAS throughout the AWR retention 
                    period!




http://karlarao.wordpress.com/2010/07/25/graphing-the-aa...
Capacity Planning
awr_genwl.sql
http://karlarao.wordpress.com/2010/01/31/workload-characterization-using-dba_hist-tables-and-ksar
U = R / C
where aas > 1
Filter the data points
•   AAS range
           aas > 1

•   Per SNAP_ID or range of SNAP_IDs
           id in (336)
     ...
core need = # of cores * utilization * 1.25
                              Database Consolidation Best Practices
    http:/...
Total disk IOPS = (IOPS * Read Ratio) + (IOPS * Write Ratio * RAID penalty)
Number of disk = Total disk IOPS / IOPS per di...
Average latency issue

60 minutes interval   10 minutes interval
latency (ms) = (readtim / phy reads) * 10
Straight line graph: Slope‐Intercept Form
                 y = mx + b
AAS vs. CPU% utilization
http://karlarao.tiddlyspot.com/#r2project
“oracpupct” column also has a good linear fit. Since the 
server’s load is CPU centric (see top r2 stats from .92 and 
   ...
AAS vs. CPU% utilization
http://karlarao.tiddlyspot.com/#r2project
Drilling down on the peak workload... 
            with AAS of 10
AAS vs. CPU% utilization
http://karlarao.tiddlyspot.com/#r2project
Now on the low workload period... 
        with AAS of 2.2
AAS vs. CPU% utilization
http://karlarao.tiddlyspot.com/#r2project
Conclusion
References and Tools
•   http://karlarao.wordpress.com
     – http://karlarao.tiddlyspot.com/#%5B%5BStorage%20IOPS%2Ccapac...
Contact me through:

  karao@sqlwizard.com
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff
Upcoming SlideShare
Loading in …5
×

OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff

2,647
-1

Published on

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,647
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
101
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

OOW Unconference 2010: Mining the AWR repository for Capacity Planning, Visualization, & other real world stuff

  1. 1. Unconference: Mining the AWR repository for  Capacity Planning, Visualization,  & other real world stuff
  2. 2. Who am I? • Karl Arao, Oracle ACE, OCP‐DBA, RHCT • Solutions Architect / Principal Consultant @ SQL*Wizard • Blog: http://karlarao.wordpress.com • Wiki: http://karlarao.tiddlyspot.com
  3. 3. What will I talk about?
  4. 4. DBA_HIST_* tables
  5. 5. My first close encounter
  6. 6. gc block lost http://karlarao.wordpress.com/2009/06/07/diagnosing-and-resolving-gc-block-lost
  7. 7. Utilization = Requirement / Capacity
  8. 8. Double Y Axis Graph
  9. 9. AWR Scripts
  10. 10. Visualization
  11. 11. Can’t go back in time?
  12. 12. AAS – Average Active Sessions Kyle Hailey: http://www.perfvision.com/ftp/emea_2010_may/02_AAS.ppt Max CPU Max CPU
  13. 13. AAS – the Golden Metric AAS & CPU count as a yardstick for a possible performance problem (I suggest reading Kyle's  stuff about this): if AAS < 1  ‐‐ Database is not blocked AAS ~= 0  ‐‐ Database basically idle ‐‐ Problems are in the APP not DB AAS < # of CPUs ‐‐ CPU available ‐‐ Database is probably not blocked ‐‐ Are any single sessions 100% active? AAS > # of CPUs ‐‐ Could have performance problems AAS >> # of CPUS ‐‐ There is a bottleneck
  14. 14. awr_topevents.sql
  15. 15. Textual trends
  16. 16. AAS throughout the AWR retention  period! http://karlarao.wordpress.com/2010/07/25/graphing-the-aas-with-perfsheet-a-la-enterprise-manager
  17. 17. Capacity Planning
  18. 18. awr_genwl.sql
  19. 19. http://karlarao.wordpress.com/2010/01/31/workload-characterization-using-dba_hist-tables-and-ksar
  20. 20. U = R / C
  21. 21. where aas > 1
  22. 22. Filter the data points • AAS range aas > 1 • Per SNAP_ID or range of SNAP_IDs id in (336) where id >= 336 and  id <= 340 • Oracle CPU Utilization oracpupct > 50 • OS CPU Utilization oscpupct > 50 • Workload periods AND TO_CHAR(s0.END_INTERVAL_TIME,'D') >= 1     ‐‐ Day of week: 1=Sunday 7=Saturday AND TO_CHAR(s0.END_INTERVAL_TIME,'D') <= 7 AND TO_CHAR(s0.END_INTERVAL_TIME,'HH24MI') >= 0900     ‐‐ Hour AND TO_CHAR(s0.END_INTERVAL_TIME,'HH24MI') <= 1800 AND s0.END_INTERVAL_TIME >= TO_DATE('2010‐jan‐17 00:00:00','yyyy‐mon‐dd hh24:mi:ss')    ‐‐ Data range AND s0.END_INTERVAL_TIME <= TO_DATE('2010‐aug‐22 23:59:59','yyyy‐mon‐dd hh24:mi:ss‘)
  23. 23. core need = # of cores * utilization * 1.25 Database Consolidation Best Practices http://husnusensoy.files.wordpress.com/2010/05/database‐consolidation‐best‐practices.pdf
  24. 24. Total disk IOPS = (IOPS * Read Ratio) + (IOPS * Write Ratio * RAID penalty) Number of disk = Total disk IOPS / IOPS per disk
  25. 25. Average latency issue 60 minutes interval 10 minutes interval
  26. 26. latency (ms) = (readtim / phy reads) * 10
  27. 27. Straight line graph: Slope‐Intercept Form y = mx + b
  28. 28. AAS vs. CPU% utilization http://karlarao.tiddlyspot.com/#r2project
  29. 29. “oracpupct” column also has a good linear fit. Since the  server’s load is CPU centric (see top r2 stats from .92 and  above), why not use it?  AAS(y) against CPU% Utilization(x) will be more  meaningful/readable instead of “CPU used by this session”
  30. 30. AAS vs. CPU% utilization http://karlarao.tiddlyspot.com/#r2project
  31. 31. Drilling down on the peak workload...  with AAS of 10
  32. 32. AAS vs. CPU% utilization http://karlarao.tiddlyspot.com/#r2project
  33. 33. Now on the low workload period...  with AAS of 2.2
  34. 34. AAS vs. CPU% utilization http://karlarao.tiddlyspot.com/#r2project
  35. 35. Conclusion
  36. 36. References and Tools • http://karlarao.wordpress.com – http://karlarao.tiddlyspot.com/#%5B%5BStorage%20IOPS%2Ccapacity%2Cperformance %2Ccost%5D%5D – http://karlarao.tiddlyspot.com/#Statistics – http://karlarao.tiddlyspot.com/#OraclePerformance • Tanel Poder @ http://blog.tanelpoder.com – http://www.tanelpoder.com/files/TPT_public.zip – http://www.tanelpoder.com/files/PerfSheet.zip – Neil Gunther & Tanel Poder ‐ Multidimensional Visualization of Oracle Performance  using Barry007 http://arxiv.org/pdf/0809.2532 • Kyle Hailey @ http://ashmasters.com , http://www.perfvision.com • Craig Shallahamer @ orapub.com – Introduction To Oracle Server Consolidation http://resources.orapub.com/product_p/server_consolidation_ppt.htm • Husnu Sensoy @ husnusensoy.wordpress.com – Database Consolidation Best Practices http://husnusensoy.files.wordpress.com/2010/05/database‐consolidation‐best‐ practices.pdf • Andy Rivenes @ http://www.appsdba.com/pubs.htm • Neeraj Bhatia @ www.nioug.org/files/Linear_Regression.pdf
  37. 37. Contact me through: karao@sqlwizard.com
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×