• Live & interactive • Recordings available • Oracle tools & tricks explained and used •
Parsing 3: How To Eliminate Similar SQL Statement Parsing Issues
Parsing problem wait events like, "latch: shared pool", "cursor: pin S", "cursor: pin S wait on X" and "library cache: mutex X"; What do these wait events mean? Why are they occurring? And, what can we do to eliminate them? In Part 3 of my parsing webinar series, we will deal directly with these issues. I will demonstrate how to cause various similar SQL statement parsing issues, so we can develop specific strategies to eradicate the performance problem.
Webinar Date: 09-Mar-2017 See Event Details
IOUG Webinar: How To Tell If There Is An OS Memory Shortage
An OS memory shortage can cause strange and intense performance situations. In this webinar, we will explore different ways to tell if there is a memory shortage and how this affects Oracle processes. Using a simple shell script, I will slowing increase memory usage. Then, we will watch what is happening using the vmstat, iostat and sar commands. And of course, we will also be monitoring the active Oracle sessions, key SQL statement elapsed times and key throughput metrics.
Webinar Date: 07-Mar-2017 - Membership Not Required! See Event Details
PUBLIC: How To Optimize Performance When The top Event Is DB CPU
Overall performance sucks. You run an AWR report for the most intense hour and see the top “event” is "DB CPU" followed by "cursor: pin S wait on X”. This is where the webinar begins! I will demonstrate how to do an Oracle time based analysis including integrating the OS situation into our analysis and finding the true “top” SQL. This journey includes a trip into Oracle’s library cache, memory access control and some interesting ways to improve SQL statement performance.
Webinar Date: 28-Feb-2017 - Membership Not Required! See Event Details
Do you lack stability in your life? Especially with it comes to Oracle Execution Plans?
Unexpected changes in execution plans can have a disastrous performance impact. Janis Griffin (Database Performance Evangelist, SolarWinds) will deep dive into several plan stability features and explain the history of plan management. You will learn how to view the optimizer’s reasons for plan change. Janis will demonstrate how adaptive plans, cursor sharing and statistic feedback can impact plan changes. Plus, several baselines, patches, and profiles case studies will be shown.
Webinar Date: 23-Feb-2017 - Guest Presenter See Event Details
PUBLIC: How To Do And Choose Your Best Performance Analysis Strategy
Ring...Users are not happy. What is your strategy to identify the issue, develop solutions, and communicate that to others? That’s what this webinar is all about. We have two fundamental performance analysis strategies: time-based and sample-based (ASH). Each strategy has strengths and weaknesses. Knowing these differences and how to exploit them gives you the edge in solving the puzzle. In this webinar, you’ll get a quick introduction of each strategy, highlighting how they work, their differences, and how to use them.
Webinar Date: 06-Feb-2017 - Membership Not Required! See Event Details
How To Forecast Performance Using Regression Analysis, Part 1
Have you ever been ask, "If we double the number of orders, can the system handle the load?" If you haven't, then be patient... you will! This webinar will help you answer this question and many like it. Using AWR data and the free statistics package R, I will lead you through the process of extracting data using SQL, examining your data, creating a regression model, beginning to validate the model and finally making forecasts. All the scripts and commands will be available for download.
Webinar Date: 02-Feb-2017 See Event Details
PUBLIC: BloodHound Toolkit - How To Install And Use
In this webinar I will demonstrate how to download, install and use my ASH based BloodHound toolkit. When you need session-level performance analysis data, you need more than ASH data. You need BloodHound because it can do things like multilevel summarization, visualization, easily work with remote data and has the ability to reference any ASH-like formatted data. I will start with downloading the toolkit and end with using the core reporting tools using AWR ASH data. I will not be focusing on the visualization tools
Webinar Date: 31-Jan-2017 - Membership Not Required! See Event Details
Parsing 2: How To Determine If Similar SQL Statements Are Causing Parsing Issues
Part 1 focused on performance issues (with a unique time profile) caused by lots of unique SQL IDs. Similar but unique SQL statements can cause this affect. In this webinar, we dive into how to determine if similar SQL statements are the root cause issue. This will bring us into the areas of cursors, child cursors, library cache internals and SQL signatures. Both v$ and AWR data will be used for demos and I will make the scripts available to OraPub members.
Webinar Date: 18-Jan-2017 See Event Details
ECO Webinar: How To Do And Choose Your Best Performance Analysis Strategy
The phone rings. Users are not happy. What is your strategy to identify the issue, develop solutions, and communicate that to others? That’s what this webinar is all about. We have two fundamental performance analysis strategies: time-based and sample-based (ASH). Each strategy has strengths and weaknesses. Knowing these differences and how to exploit them gives you the edge in solving the puzzle. In this webinar, you’ll get a quick introduction of each strategy, highlighting how they work, their differences, and how to use them.
Webinar Date: 17-Jan-2017 - Membership Not Required! See Event Details
Parsing 1: From SQL Text To SQL_ID To Diagnosing Performance Problems
When an application submits SQL or PLSQL to the database, before it can be executed, it must be parsed. So, parsing had better happen fast and consume minimal resources. Otherwise, there will likely be a lack of CPU resources, latching and mutex issues, out of shared pool errors or even an instance freeze. Our focus today is understanding Oracle's process architecture, parsing checks, general hashing, hashing that results in a SQL_ID and how to tell if "too many" SQL_IDs are causing performance issues.
Webinar Date: 5-Jan-2017 See Event Details
How To Integrate CPU Utilization Into Your Performance Analysis
A pure Oracle time-based analysis is not enough. Integrating CPU utilization into your analysis enhances your understanding of the performance situation. In this webinar I will demonstrate how to calculate and check the reported AWR report CPU utilization plus, show you how to use this data to better understand what is happening thereby strengthen your analysis which enables you to create better solutions.
Webinar Date: 15-Dec-2016 See Event Details
How To Measure DB Workload And Use The Data
Oracle keeps track of work being processed in the database. You can use the workload statistics to check the health of a database, to look for unusual or unexpected activity, for predictive analysis and to validate performance. In this webinar I will show the workload statistics, how and where to get them (AWR, ASH, v$sysstat), which ones are relevant for a specific system and how to use the data to forecast future performance. Join us as we explore workload data, one of the must underutilized health and performance indicators.
Webinar Date: 01-Dec-2016 See Event Details
How To Identify And Solve SQL Sorting Issues
Sorting can kill SQL statement performance. But, it is also important and at times necessary. As DBAs we need to know when the necessary becomes a problem. And then, how to resolve the problem. How to do this is the focus of this webinar. These are the question we will focus on: How do I know sorting is a real problem? How do I know an instance being impacted by sorting? How do I know a SQL statement is being impacted by sorting? How do I know a SQL statement is causing or contributing to a sorting problem?
Webinar Date: 17-Nov-2016 See Event Details
Non-Stop AWR Report Analysis Marathon
Non-stop AWR report analysis! Based on your AWR/Statpsack reports, Craig will do multiple super-fast time-based analysis within the OraPub 3-Circle framework. You will be able to see and hear Craig as he works through each report. The results will be a list of solutions and next steps. Email Craig (email@example.com) your AWR or Statspack reports for consideration. The snapshot duration must be one hour or less. If selected, your report will be shown publicly in the live and recorded webinar, so you are responsible for any "cleansing" of proprietary details.
Webinar Date: 10-Nov-2016 See Event Details
How To Tell If There Is An OS CPU Shortage
An operating system CPU shortage can cause very intense but predictable performance situations. In this webinar we will explore different ways to tell if there is a CPU bottleneck and how this resource shortage affects Oracle processes. Using a simple SQL script, I will slowly increase CPU consumption usage. Then we will watch what is happening using vmstat, top and sar. And of course, we will also be monitoring the active Oracle sessions, key SQL statement elapsed times and key throughput metrics. As you will see, a CPU bottleneck can cause some really intense performance situations.
Webinar Date: 20-Oct-2016 See Event Details
How To Tell If There Is An OS Memory Shortage
An OS memory shortage can cause very strange and intense performance situations. In this webinar we will explore different ways to tell if there is a memory shortage and how this affects Oracle processes. Using a simple shell script, I will slowing increase memory usage. We will watch what is happening using the vmstat, iostat and sar commands. We will also be monitoring the active Oracle sessions, key SQL statement elapsed times and key throughput metrics. As you will see, a memory bottleneck (excuse me, memory pressure) can cause some really strange performance behavior.
Webinar Date: 06-Oct-2016 See Event Details
How To Develop Solutions When The top Event Is DB CPU
Overall performance sucks as far as the users are concerned. After months of meetings management finally wants you to get involved. You run an AWR report for one of the most intense hours and notice the top “event” is "DB CPU" followed by "cursor: pin S wait on X”. This is where the webinar begins! I will demonstrate how to do an Oracle time based analysis, looking at the OS and also the “top” SQL. This journey also includes a trip into Oracle’s library cache, serialization control and some interesting ways to improve SQL statement performance.
Webinar Date: 8-Sep-2016 See Event Details
How To Run and Effectively Use OraPub's CPU Speed Test Tool
Ever wonder how your CPU speeds compare from one Oracle Database system to another? And don’t forget, we also need to factor in other performance impacting factors such as the hardware, operating system, Oracle release, application software and the various versions and patches. In this webinar I will show you how to use OraPub’s CPU Speed Test tool, how it works and how you can use it to answer a question like, “So when we migrate to our new environment, how much faster will our key SQL statement run?"
Webinar Date: 31-Aug-2016 - Membership Not Required! See Event Details
NoCOUG: Creating True Wait Event Histograms Using R
If you want to know more than the "average" wait event time, then you need to watch this webinar. I will demonstrate why it is easy to be misled by v$event_histogram, the associated OEM chart or by simply looking at the data. Plus the average event wait time is unlikely to be the typical wait time. Using R and dba_hist_event_histogram data, I will demonstrate how to get solid wait event statistics and create a true/proper histogram of the data. Good stuff! You can download the slides HERE.
Webinar Date: 30-Aug-2016 - Membership Not Required! See Event Details
BloodHound: How To Install And Use OraPub's ASH Focused Toolkit
In this webinar I will demonstrate how to download, install and use my ASH based BloodHound toolkit. This includes everything from creating visualizations, pulling data from a remote system, typical analysis usage and even how to modify the scripts. When you need session-level performance analysis data, you need more than ASH data. You need BloodHound because it can do things like multilevel summarization, visualization, easily work with remote data and the ability to reference any ASH-like formatted data.
Webinar Date: 09-Aug-2016
Jumpstart Your "Single Pane" Dashboard Using Graphite
It is critical to have real time instrumentation and measurement of ALL components of the infrastructure. Graphite is one of the more popular Open Source “single pane of glass” dashboards with visibility into all aspects of the environment. This webinar will give you a brief overview of Graphite and it’s architecture and then will focus on HOW YOU CAN integrate your Oracle metrics into a Graphite implementation. In other words, this webinar demonstrates how you can create your own graphical performance monitoring system! Special Guest & Colleague: Troy Ligon
Webinar Date: 28-Jul-2016
How To Solve A Massive Session Spike Mystery
In a panic, the operations team tells you that yesterday there was a massive process spike which nearly caused them to recycle the database server. It's pretty straightforward what they want, "Answers!" In this webinar we explore the process spike at the Oracle session level, then cross check that with the alert log and instance parameters. Our conclusions will include specific changes and a startling visualization of the situation. The tools used are my BloodHound toolkit to analyze the AWR ASH data and R to render the visualization.
Webinar Date: 21-Jul-2016
How To Solve A Strange EBS Batch Row Lock Situation
Some users said when they got back from lunch around 2pm the EBS batch processing queue was stuck and building up. While not widely discussed, the truth is the DBAs have seen row locks and have been killing sessions. But this time, something went wrong and batch processing effectively froze. In this webinar we will explore ASH/AWR, the Bloodhound Toolkit, the Oracle wait event enq: TX - row level lock, ASH incident analysis strategies and how to chart the locking situation. R will be used to graph the lock situation.
Webinar Date: 30-Jun-2016
How To Identify & Solve Oracle IO Read Related Wait Events
Their batch job is still running. The top wait events are all IO read related: db file scattered and sequential read, direct path read and also direct path read and write temp. We will explore the common Oracle IO read wait events, their differences and what you can specifically do to improve performance. Craig will operating system trace Oracle processes, reference real-time data using his real-time session sampler (OSM), perform an Oracle time-based analysis and then develop solutions aimed directly at these “opportunities.”
Webinar Date: 9-Jun-2016
How To Use And Determine How Much Work Your CPUs Can Process - Part 2
Performance is fine. But you want to know how much more work you can push through the Oracle database before the CPUs are too busy and users start calling. In this webinar Craig will show you how to find this "too busy wall" from AWR or Statspack data, how to visualize it in Excel and how to choose levels of concern/risk so you can start taking action before it's too late.
Webinar Date: 26-May-2016
How To Use And Determine How Much Work Your CPUs Can Process - Part 1
At the moment performance is fine. But you want to know how much more work you can push through the Oracle database before the CPUs are too busy and users start calling. In this webinar Craig will show you how to calculate CPU utilization from v$osstat, workload from v$sysstat and relate the two together numerically and visually in MS-Excel. You will quickly notice there is a very pronounced relationship between the CPU busyness and the Oracle workload!
Webinar Date: 12-May-2016
How To Create And Use A "Tipping Point" Performance Indicator
You are receiving too many false positive poor performance alerts. You need to find a better way to detect when there is a general performance slowdown and to set your thresholds appropriately. To demonstrate this Craig will show you how to create a "tipping point" indicator from AWR or Statspack data, how to visualize this in Excel and how to chose smart alert thresholds.
Webinar Date: 28-Apr-2016
How To Assess Overall Performance With A Single Number
You need to answer the question, "How is performance doing today?" But with a twist. You need to answer the question with a single number. Possible? Meaningful? For sure and that's what this webinar is all about. Craig's objective is to show you how to quantify performance with a single number. Sometimes you need to quantify performance that's related to a sql_id, a job or an entire instance... without the luxury of measuring the wall time or elapsed time. Call it an indicator if you wish.
Webinar Date: 7-Apr-2016
How To Use ASH Data Data In Unusual Ways - Part 2
Two different groups of users complained that their batch jobs started slowing starting just before 12 noon. They don't understand why and are concerned because month end processing will begin next week. Our objective is to diagnose the situation resulting in a list of solutions. In this webinar (Part 2), Craig will use ASH data to estimate SQL statement run or wall time. Plus, he will complete our analysis with specific steps to improve performance. Craig will also use OraPub's free BloodHound toolkit... in some unusual ways.
Webinar Date: 17-Mar-2016
How To Use ASH Data Data In Unusual Ways - Part 1
Two different groups of users complained that their batch jobs started slowing starting just before 12 noon. They don't understand why and are concerned because month end processing will begin next week. Our objective is to diagnose the situation resulting in a list of solutions. In Part 1 of this series, Craig will use historical ASH data to check if a SQL statement plan changed and also how to appropriately estimate wait times using the time_waited column. He will also use OraPub's free BloodHound toolkit... in some unusual ways.
Webinar Date: 11-Mar-2016
How To Do An Oracle Time-Based Analysis (CPU and IO issues)
It turns out that batch job duration is really upsetting the users. So you run a one-hour Statspack report for the bad time. Now what? That's what this webinar is all about. What is unique about this situation is the top wait event is db file sequential reads, but they are really fast and Oracle processes have more associated CPU than wait time! Craig will do a 3-Circle and an Oracle time-based analysis resulting in multiple spot-on solutions.
Webinar Date: 18-Feb-2016
How To Estimate SQL Statement Elapsed Time
Oh man! Your manager asks, "So John, after you tune that top SQL statement, how fast will it run?" It is a sensible question and deserves a more professional response than, "Really fast boss. Super fast." The good news is you ran tests decreasing the logical IOs from 100K to 500. But just how much of a run-time difference will it make when the SQL is run in production? How YOU can answer that question (like the professional that you are) is what this webinar is all about.
Webinar Date: 3-Feb-2016
How To Tell If The IO Subsystem Is Struggling
How many times have you heard or felt, "It's an IO problem!" How can you tell? What does this even mean? Who's fault is it? With the Oracle DBA at the helm, answering these questions with factual authority is what this webinar is all about. Craig will be using a variety of Oracle and operating system data sources and tools. He will even show you how to visualize the situation using the R statistics package.
Webinar Date: 19-Jan-2016
Eliminate Cache Buffer Chain Waits (Solution)
Our objective is to complete the Oracle-focus diagnosis, implement the solution and measure its effectiveness! Previously, our objective was to understand the Oracle internals, see what's happening at the OS, properly diagnose a cache buffer chain situation using an Oracle Time-Based Analysis and devise three appropriate solutions. The situation? "It's just slow!" The CPUs are at 60%, the top wait event is "latch: cache buffer chains" and a seemingly random selection of business functions are clearly... slow.
Webinar Date: 22-Dec-2015
Eliminate Cache Buffer Chain Waits! - Part 1
"It's just slow!" The CPUs are at 60%, the top wait event is "latch: cache buffer chains" and a seemingly random selection of business functions are clearly... slow. Our objective is to understand the Oracle internals, see what's happening at the OS, properly diagnose a cache buffer chain situation using an Oracle Time-Based Analysis and devise three appropriate solutions. In the next webinar, Craig will implement the most interesting solution!
Webinar Date: 2-Dec-2015
Build Your Own ASH Toolkit! Part 3
Part 3 will focus on: Building a "timeline" script that summarizes X minutes of ASH activity into a single line and displays Y number of X minute lines. For example, each line could summarize 15 minutes of ASH activity, from 9am to 12noon resulting in 12 output lines. This allows us to see how ASH activity changes over time, so you can spot times of key and suspicious activity. Use the script to converge on and isolate a "needle in the haystack" incident.
Webinar Date: 24-Nov-2015
Build Your Own ASH Toolkit! Part 2
Let's build something! We start with our Part 1 primitive Oracle instance profiling script and extend that to also show the top wait events. Then we modify it so it can profile any column in ASH. Then we create a "top anything" script that shows the top CPU or WAIT program, module, sql_id, session_id, etc. Then we'll put them all together to investigate an Oracle system.
Webinar Date: 22-Oct-2015
Build Your Own ASH Toolkit! Part 1
Let's build something! We start with an introduction into ASH and then contrast ASH with an Oracle Time-Based Analysis. Slowly and from the ground up, Craig builds an ASH-based tool that will profile an Oracle instance. Also explained is what the profiling "tells" us and what the next performance optimization steps should be.
Webinar Date: 30-Sep-2015
It's Free Buffer Waits!
No specific business function has been identified, OLTP users are complaining, batch processes are taking longer and the situation is getting worse. Craig's mission is to analyze performance from both a Time-Based and an Active Session History perspective. He identifies specific performance improving opportunities. You will be able to understand how the event happened, see what it looks like from the OS and derive three targeted solutions. Plus, Craig implements one of the solutions. See what happens!
Webinar Date: 9-Sep-2015
Build OS CPU Monitor
Let's build something! Craig shows you step-by-step how to build an OS CPU monitor tool. The data is pulled from the same source as top, vmstat, sar and Oracle... and the /proc filesystem. The result is a shockingly simple Linux shell script that shows average CPU utilization and the CPU run queue.
Webinar Date: 14-Aug-2015
Use OS To Confirm Oracle Situation
How to use common operating system tools (vmstat, top, sar, iostat) to comfirm what we see from an Oracle time-based and sample-based (ASH) Oracle performance tuning analysis.
Webinar Date: 31-July-2015
Solve Log File Switch Using An ASH Approach
How to diagnose and solve an Oracle database "log file switch (checkpoint incomplete)" wait event situation. An Active Session History (ASH) live (v$) based approach is used along with solutions focused on Oracle, OS and the application. OraPub's BloodHound toolkit, vmstat and iostat tools are used.
Webinar Date: 17-July-2015
Solve Log File Switch Using A Time-Based Approach
How to diagnose and solve an Oracle Database "log file switch (checkpoint incomplete)" wait event situation. A time based approach is used along with solutions focused on Oracle, OS and the application. OraPub's OSM toolkit, vmstat and iostat tools are used.
Webinar Date: 10-July-2015
Visualize A Row Lock Situation
How to use OraPub's BloodHound toolkit to pull remote ASH/DBA_HIST data into your local Oracle database to diagnose a TX row lock situation and create R commands. Then we will visualize the locking situation using the free statistical package R.
Webinar Date: 26-June-2015
Using R To Create Proper V$EVENT_HISTOGRAM Histograms
Installing R, using [v$,dba_hist_]event_histogram data with OSM tools to create proper statistical histograms in R
Webinar Date: 15-May-2015
Using ASH/DBA_Hist To Do A Time-Like Analysis
Using ASH/DBA_HIST data to do an Oracle Time-Like Analysis using the BloodHound Toolkit
Webinar Date: 1-May-2015
How To Do An Oracle Time-Based Analysis
Craig shows you how to do this analysis when the top event is db file sequential reads.
Webinar Date: 10-April-2015