{"id":1719,"date":"2014-07-24T12:00:00","date_gmt":"2014-07-24T12:00:00","guid":{"rendered":"http:\/\/orcldoug.com\/blog\/?p=1719"},"modified":"2014-07-24T12:00:00","modified_gmt":"2014-07-24T12:00:00","slug":"recurring-conversations-awr-intervals-part-2","status":"publish","type":"post","link":"http:\/\/orcldoug.com\/blog\/2014\/07\/24\/recurring-conversations-awr-intervals-part-2\/","title":{"rendered":"Recurring Conversations: AWR Intervals (Part 2)"},"content":{"rendered":"<p>(Reminder, just in case we still need it, that the use of features in this post require Diagnostics Pack license.)<\/p>\n<p><em>Damn me for taking so long to write blog posts these days. By the time I get around to them, <\/em><a href=\"http:\/\/18.133.199.212\/?p=1713#c17542\"><em>certain very knowledgeable people have commented on part 1<\/em><\/a><em> and given the game away! &#128521;<br \/><\/em><br \/>I finished the last part by suggesting that a narrow AWR interval makes less sense in a post-10g Diagnostics Pack landscape than it used to when we used Statspack. <\/p>\n<p>Why do people argue for a Statspack\/AWR interval of 15 or 30 minutes on important systems? Because when they encounter a performance problem that is happening right now or didn\u2019t last for very long in the past, they can drill into a more narrow period of time in an attempt to improve the quality of the data available to them and any analysis based on it. (As an aside, I\u2019m sure most of us have generated additional Statspack\/AWR snapshots manually to *really* reduce the time scope to what is happening right now on the system, although this is not very smart if you\u2019re using AWR and Adaptive Thresholds!) <\/p>\n<p>However, there are better tools for the job these days. <\/p>\n<p>If I have a user complaining about system performance then I would ideally want to narrow down the scope of the performance metrics to that user\u2019s activity over the period of time they\u2019re experiencing a slow-down. That can be a little difficult on modern systems that use complex connection pools, though. Which session should I trace? How do I capture what has already happened as well as what\u2019s happening right now? Fortunately, if I\u2019ve already\u00a0paid for Diagnostics Pack then I have *Active Session History* at my disposal, constantly recording snapshots of information for all active sessions. In which case, why not look at<\/p>\n<p>&#8211; The session or sessions of interest (which could also be *all* active sessions if I suspect a system-wide issue) <br \/>&#8211; For the short period of time I\u2019m interested in <br \/>&#8211; To see what they\u2019re actually doing <\/p>\n<p>Rather than running a system-wide report for a 15 minute interval that aggregates the data I\u2019m interested in with other irrelevant data? (To say nothing of having to wait for the next AWR snapshot or take a manual one and screwing up the regular AWR intervals &#8230;) <\/p>\n<p>When analysing system performance, it\u2019s important to use the most appropriate tool for the job and, in particular, focus your data collection on what is *relevant to the problem under investigation*. The beauty of ASH is that if I\u2019m not sure what *is* relevant yet, I can start with a wide scope of all sessions to help me find the session or sessions of interest and gradually narrow my focus. It has the history that AWR has, but with finer granularity of scope (whether that be sessions, sql statements, modules, actions or one of the many other <a href=\"http:\/\/docs.oracle.com\/cd\/E11882_01\/server.112\/e25513\/dynviews_1007.htm\">ASH dimensions<\/a>). Better still, if the issue turns out to be one long-running SQL statement, then a <a href=\"http:\/\/www.oracle.com\/technetwork\/database\/manageability\/sqlmonitor-084401.html\">SQL Monitoring Active Report<\/a> probably blows all the other tools out of the water! <\/p>\n<p>With all that capability, why are experienced people still so obsessed with the Top 5 Timed Events section of an AWR report as one of their first points of reference? Is it just because they\u2019ve become attached to it over the years of using Statspack? AWR has it\u2019s uses (see JB\u2019s comments for some thoughts on that and I\u2019ve blogged about it extensively in the past) but analysing specific performance issues on Production databases is not it\u2019s strength. In fact, if we\u2019re going to use AWR, why not just use <a href=\"http:\/\/18.133.199.212\/?p=1504\">ADDM<\/a> and let software perform automatically the same type of analysis most DBAs would do anyway (and in many cases, not as well!) <\/p>\n<p>Remember, there\u2019s a reason behind these Recurring Conversations posts. If I didn\u2019t keep finding myself debating these issues with experienced Oracle techies, I wouldn\u2019t harbour doubts about what seem to be common approaches. In this case, I still think there are far too many people using AWR where ASH or SQL Monitoring are far more appropriate tools. I also think that if we stick with a one hour interval rather than a 15 minute interval, we can retain four times as much *history* in the same space! When it comes to AWR \u2013 give me long retention over a shorter interval every time! <\/p>\n<p>P.S. As well as thanking JB for his usual insightful comments, I also want to thank <a href=\"http:\/\/blog.nasmart.me\/\">Martin Paul Nash<\/a>. When I was giving an AWR\/ASH presentation at this springs OUGN conference, he noticed the bullet point I had on the slide suggesting that we *shouldn\u2019t* change the AWR interval and asked why. Rather than going into it at the time, I asked him to remind me at the end of the presentation and then because I had no time to answer, I promised I\u2019d be blogging about it that weekend. That was almost 4 months ago! Sigh. But at least I got there in the end! &#128521; <\/p>\n","protected":false},"excerpt":{"rendered":"<p>(Reminder, just in case we still need it, that the use of features in this post require Diagnostics Pack license.) Damn me for taking so long to write blog posts these days. By the time I get around to them, certain very knowledgeable people have commented on part 1 and given the game away! &#128521;I&hellip; <a class=\"more-link\" href=\"http:\/\/orcldoug.com\/blog\/2014\/07\/24\/recurring-conversations-awr-intervals-part-2\/\">Continue reading <span class=\"screen-reader-text\">Recurring Conversations: AWR Intervals (Part 2)<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1719","post","type-post","status-publish","format-standard","hentry","category-uncategorized","entry"],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":1713,"url":"http:\/\/orcldoug.com\/blog\/2014\/07\/07\/recurring-conversations-awr-intervals-part-1\/","url_meta":{"origin":1719,"position":0},"title":"Recurring Conversations: AWR Intervals (Part 1)","date":"July 7, 2014","format":false,"excerpt":"I've seen plenty of blog posts and discussions over the years about the need to increase the default AWR retention period beyond the default value of 8 days. Experienced Oracle folk understand how useful it is to have a longer history of performance metrics to cover an entire workload period\u2026","rel":"","context":"With 6 comments","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1553,"url":"http:\/\/orcldoug.com\/blog\/2009\/12\/13\/my-favourite-oracle-blog\/","url_meta":{"origin":1719,"position":1},"title":"My Favourite Oracle Blog","date":"December 13, 2009","format":false,"excerpt":"Some features in this post require a Diagnostics Pack license.I think there a quite a few decent Oracle blogs around. There are links to some of them over there on the right. But by far my favourite this year has been Kerry Osborne's. I think there are a number of\u2026","rel":"","context":"With 9 comments","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1504,"url":"http:\/\/orcldoug.com\/blog\/2009\/06\/28\/i-love-addm\/","url_meta":{"origin":1719,"position":2},"title":"I Love ADDM","date":"June 28, 2009","format":false,"excerpt":"Some features in this post require a Diagnostics Pack license.I'll get back to adaptive thresholds at some point but something's been bugging me.I'm not just trying to be controversial but I've a feeling I'm about to be, given that ADDM is the probably the most infamous of the 10g 'Automatic\u2026","rel":"","context":"With 8 comments","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1513,"url":"http:\/\/orcldoug.com\/blog\/2009\/07\/30\/awr-differences-report\/","url_meta":{"origin":1719,"position":3},"title":"AWR Differences Report","date":"July 30, 2009","format":false,"excerpt":"Some features in this post require a Diagnostics Pack license.This morning I had an opportunity to use one of my favourite AWR tools, the differences report. Our system has a fairly involved overnight batch schedule consisting of multiple concurrent job streams that starts at 02:00 and usually completes at about\u2026","rel":"","context":"With 12 comments","img":{"alt_text":"","src":"\/serendipity\/uploads\/awrdd2.png","width":350,"height":200},"classes":[]},{"id":1050,"url":"http:\/\/orcldoug.com\/blog\/2006\/08\/10\/historical-perspective-part-2\/","url_meta":{"origin":1719,"position":4},"title":"Historical Perspective (Part 2)","date":"August 10, 2006","format":false,"excerpt":"Let's look at items 2 and 3 from the list in my previous blog1) You know you have a performance problem and can re-create it by running a specific part of the application, be it a user interaction or batch job.2) You have an intermittent but recurring performance problem which\u2026","rel":"","context":"Similar post","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1429,"url":"http:\/\/orcldoug.com\/blog\/2008\/08\/20\/time-matters-db-time\/","url_meta":{"origin":1719,"position":5},"title":"Time Matters &#8211; DB Time","date":"August 20, 2008","format":false,"excerpt":"[In retrospect, the title of that first blog post might have suited the subject, but doesn't translate too well for subsequent related blog posts. That was a lack of planning or foresight on my part. These blog posts are tumbling out of my head in a fairly incoherent way. Maybe\u2026","rel":"","context":"With 13 comments","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"http:\/\/orcldoug.com\/blog\/wp-json\/wp\/v2\/posts\/1719","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/orcldoug.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/orcldoug.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/orcldoug.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/orcldoug.com\/blog\/wp-json\/wp\/v2\/comments?post=1719"}],"version-history":[{"count":0,"href":"http:\/\/orcldoug.com\/blog\/wp-json\/wp\/v2\/posts\/1719\/revisions"}],"wp:attachment":[{"href":"http:\/\/orcldoug.com\/blog\/wp-json\/wp\/v2\/media?parent=1719"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/orcldoug.com\/blog\/wp-json\/wp\/v2\/categories?post=1719"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/orcldoug.com\/blog\/wp-json\/wp\/v2\/tags?post=1719"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}