Method R Workbench

Method R Workbench is an Oracle trace file management system for analyzing, managing, and manipulating thousands of files at a time. It’s a high-precision response time measurement tool for Oracle DBAs, application developers, and decision-makers.

Method R Workbench overview

I managed big-time Oracle databases and applications for many years. Method R was the only thing I encountered that was 0% crap and 100% insight. With minimal effort this Method R Workbench tells it like it is.

Richard Russell · former 7-Eleven Enterprise Architect

Who Uses Method R Workbench and Why?

Small and large companies in virtually every industry sector around the world use Method R Workbench to see exactly where their applications spend their time:

  • Oracle DBAs use Method R Workbench to prevent performance problems by measuring application performance on test systems; and to monitor, test, and troubleshoot user performance experiences on production systems.
  • Oracle application developers use Method R Workbench to find and fix bugs in their code, and to measure and optimize their code while they’re writing or repairing it.
  • Non-technical users and managers use Method R Workbench software to connect detailed Oracle performance data with the end users’ performance experiences that affect the business.

DBAs, application developers, and decision-makers use Method R Workbench in every phase of the software life cycle, including:

  • Minute-to-minute testing and debugging of new code as it is written
  • Code reviews
  • Performance tests
  • Concept proofs
  • Hardware and software evaluations
  • Upgrades
  • Troubleshooting
  • Any time you need to know how long a program takes and why

Click here to see a set of short Workbench video tips that will familiarize you with how it works.

We use Method R software almost daily for diagnosing performance issues. It’s easy enough for my users to understand that I don’t even have to explain anything.

Nancy Spafford · DBA and Tech Lead · Lawrence Livermore National Laboratory

What’s Inside

At the heart of the Workbench is a profiler that’s descended from the Hotsos Profiler, which Cary Millsap and Jeff Holt wrote about in 2003. We’ve completely rewritten our profiler since our Hotsos days, but the experience behind our profiler is now more than two decades old. It is by far the fastest and most accurate Oracle profiler in the world.

Why you need a profiler for Oracle

But profiling a single trace file is not enough for modern performance measurement. The Workbench application includes a sophisticated file manager that helps you organize your files, see which ones have the most interesting content, and label those files for easy retrieval later.

Our skew analysis utility is a powerful and flexible query engine that helps you quickly find whatever information you need from your several gigabytes of trace data, like individual user response times, or even individual dbcalls or syscalls that are taking longer than they should.

Sometimes, the response time you’re looking for is buried within just a small part of one of your many trace files. A trace file cropper utility makes it easy to crop out unwanted parts of a trace file, much like a photo editor makes it easy to crop out that telephone pole that you didn’t want in your shot.

Using Workbench to solve a pesky problem

In 1974, Donald Knuth wrote that “the universal experience of programmers who have been using measurement tools has been that their intuitive guesses [about which code is critical] fail.” It’s still true today, but in the Oracle ecosystem, it can be hard to find measurement tools you can trust.

Method R Workbench is what we use, and it’s what hundreds of developers and DBAs have used to stop guessing. We have tools, tips, manuals, books, courses, …everything it takes to get you to “I got this.”

That Method R software is awesome. It has an uncanny tendency to make me look like I know what I’m doing.

Chris Stephens · DBA · Urbana, Illinois

Concept

The centerpiece of Method R Workbench is a response time profiler called mrprof that creates a detailed HTML5 report. The fundamental element that is repeated throughout this report is the profile, which is, in essence, a “receipt for response time”:

ContributorDurationCall countAverage
duration
per call
CPU901,8000.050
disk66,0000.001
other44000.010
Total1008,2000.012
A profile is analogous to a “receipt for response time”—durations in an actual Method R profile are accurate to a millionth of a second.

This “receipt for response time” format shows unambiguously why your application consumes the response time it does, and it implies what response time contributor you should focus on next.

The HTML5 document uses color to attract your attention and English narrative to guide your analysis. With minimal training, a Method R Workbench user can identify the root cause of an Oracle-based application performance problem, propose sensible solutions to it, and predict the end-user response time impact of each proposed solution.

Method R Workbench includes a trace data mining tool called mrskew that helps you answer ad hoc performance questions from one or more trace files. Among the more than 40 prepackaged actions you can execute are innovative mrskew reports like:

  • Show the durations experienced by your application users among a directory full of trace files for a connection pool.
  • For a loop of SQL executions, show the iteration that takes the most time, along with the input values (“bind variable values”) that drove it.
  • Show I/O subsystem latencies grouped by Oracle data file ID.

Method R Workbench also includes a trace file cropping tool called mrcrop that helps you remove out-of-scope data from your analysis. Several predefined mrcrop actions are distributed with the product.

Method R Workbench includes other utilities that help with converting Oracle timestamp data to wall clock times and back (mrwhen), and creating scriptable chains of mrskew reports (mrkey).

It took me only 30 minutes to install the Method R Workbench and get a whole new view of a problem that would have taken me days to spot.
Blown away.

Lars Johan Ulvaseth · Consultant · Bergen, Norway

Sample Method R Profile

Sample mrprof HTML5 report

Click the picture to see a sample mrprof HTML5 report. The user experience represented by this report was the execution of a simple DBA_EXTENTS query to find out what Oracle segment resides at a given file number and block number. In spite of the tremendous hardware capacity of the Oracle Exadata system it ran on, the query took more than 8 seconds to finish. The Method R Guide to Mastering Oracle Trace Data explains how we reduced the duration of this query to less than a second.

…Under one minute I was looking directly at the problem. No more guesswork. No more Sherlock with the magnifier goofing around.

Eduard Turea · Consultant · Calgary, Alberta

Feedback is the Key to Agility

Most application developers are not Oracle experts. Project leaders try to compensate with strict development standards, but no list of “best practices for Oracle developers” is good enough to save you. However, there is a solution: it’s feedback.

Why you should trace your code—all of it

Feedback is the key to any improvement process. Shorter feedback loops mean greater agility. Feedback from Method R Workbench stimulates developers of all experience levels to ask the better questions about their code as they write it.

In today’s agile projects, testing is not a phase at the end; it is a continual task that drives every iteration of a project. With the right tools, teams measure performance every day. Performance becomes an ever-present, understandable, predictable attribute of every iteration of your software.

When you see performance this way, the idea of pushing your code without profiling it would be as unsettling as the idea of cooking for your team without washing your hands.

Getting baselines of critical business functions is a great way to feel confident about how your system is running.

Nancy Spafford · DBA and Tech Lead · Lawrence Livermore National Laboratory

Distinctive Benefits

Method R Workbench gives you unparalleled relevance, ease of use, functionality, and precision:

  • It helps you answer the deceptively simple-sounding “four magic questions” of performance: How long? Why? What if? and What else?
  • It encourages a repeatable method for solving software performance problems, and it uses plain English narrative to guide your analysis. It thus reduces your requirements for training, experience, and intuition.
  • It is a remarkably fast file management system that helps you organize and operate upon hundreds or even thousands of trace files at a time.
  • Method R Workbench creates a complete, accurate response time profile that shows where all your user’s response time has gone, even when some of that time was consumed in application tiers other than the database.

For Everyone

Some Method R Workbench benefits that are important to everyone include:

  • English narrative in Method R profile HTML5 reports help you read your reports like a book, making it easier than ever to understand the stories that your trace files are trying to tell you.
  • Train your staff with less investment than with other performance measurement methods and tools.
  • Find the individual performance experiences that your users are feeling, even if they’re buried in gigabytes of data spread across thousands of trace files.
  • Methods and tools are comprehensively documented in Cary Millsap and Jeff Holt’s The Method R Guide to Mastering Oracle Trace Data and detailed product manual pages.
  • Each high-precision profile report explains 100.0% of your response time, with no gaps or overlaps.
  • Our exclusive “receipt for response time” data format reduces guesswork and debate about how programs are spending people’s time, and it facilitates predicting how a proposed change would affect response times.
  • Each report is expressed in simple units of hours, minutes, and seconds that users, developers, DBAs, and sysadmins can all understand and discuss.
  • Each Method R profile HTML5 report uses English language narrative and and color to guide the analyst through information in the detailed report.
  • The profiler kernel is fast. For some trace files it’s over 100,000 times faster than Oracle’s tkprof utility.
  • By default, each profile report elides irrelevant, small-duration details to remove distractions for the analyst; full details are available with a click.
  • Parent-child relationships among SQL or PL/SQL statements are easy to see, and simple affordances make it easy to navigate from parent to child to parent again.
  • Users can customize reports to suit their needs, including levels of detail, international number formats, and latency tolerances for individual calls.
  • More than 40 common actions and reports are shipped with the product.
  • A sophisticated multi-dimensional skew analysis tool makes it possible to answer performance questions that you wouldn’t answer any other way.

For DBAs

Some benefits that are particularly important to DBAs include:

  • See where your users’ time is going with 0.000001-second resolution.
  • Method R Trace integration gives developers fast, secure access to their own trace data, with DBA assistance only once at product installation time.
  • Profiles help troubleshoot performance problems in production.
  • Profiles are the perfect documents for driving code reviews with developers.
  • Profiles help you measure response times during software evaluations.
  • Profiles help you measure response times of competing alternatives during concept proofs.
  • Profiles are the perfect documents for baselining response time prior to upgrades.
  • Method R Workbench summarizes information about thousands of trace files at a glance.
  • Ad hoc reports on performance data can span thousands of trace files, revealing systemwide performance trends.
  • Our cropping utility makes it easy to crop out-of-scope data from imprecisely collected trace files.

For Developers

Some benefits that are particularly important to developers include:

  • See immediately how the code you’re writing consumes time.
  • Method R Trace integration makes it easy to obtain properly scoped trace files, without having to bother your DBA or system administrator.
  • Profiles teach you how to reach the high-performance potential of Oracle Database.
  • Profiles are an excellent basis for code reviews with DBAs and other developers.
  • Profiles show end-user response times during performance tests.
  • Using profiles side-by-side help you decide among implementation choices.
  • Profiles identify inefficiencies and scalability inhibitors in your code.
  • Profiles help you troubleshoot performance problems with DBAs in production systems.

The advisory sections are really useful. It’s like having the Method R team in my browser!

Dallas Deeds · DBA · Columbus, Ohio

Integration with Method R Trace

Method R Workbench is a trace file management system. But where do your trace files come from? One popular option is the Method R Trace extension for Oracle SQL Developer.

Method R Trace makes it super easy to collect perfectly scoped trace files, right from within the interactive development environment where you’re writing and testing your SQL and PL/SQL code. The integration is nearly effortless.

How to move files from Method R Trace into Method R Workbench

Specifications

Design imperatives: (1) explain exactly why an Oracle-based program consumes the duration that it does; (2) predict how a proposed change would impact the duration of a program duration that you care about; (3) organize and manage all the Oracle trace files you’ll accumulate throughout your application’s life cycle; (4) identify and extract specific user experiences from high volumes of trace data that also contain information that is outside of a given analytical scope.

Architecture: Method R Workbench is a 64-bit Java application and a set of utilities that can be executed from the Workbench application or from an operating system command line.

Platforms: macOS, Microsoft Windows, Linux.

Input: Oracle Database event 10046 extended SQL trace files written by Oracle Database version 11.1 or newer. The mr1011 Workbench utility can convert trace files written by older Oracle Database versions to the format established in Oracle version 11.1.

Output: Portable HTML5, plain text, and comma-separated-value (CSV) files.

Workflow: Users generally copy Oracle trace files (e.g., using Method R Trace, FTP, or NFS) from the database server to a separate computer where Method R Workbench is installed. Users will sometimes install Method R Workbench on the database server to see information about trace files before copying them.

Interfaces: Section 508-compliant (29 U.S.C. 794d) graphical user interface. Most functions are also executable through a command line API.

Internationalization: HTML5 reports can render any of eight international number formats. Application controls, narrative text, and documentation are English language.

Integration: Drag-and-drop integration with its operating system and other applications (e.g., Finder, Explorer, Method R Trace).

Database components: No components are installed on the database server or in the database. Users use standard Oracle packages like DBMS_SESSION and DBMS_MONITOR to generate trace files.

Installation prerequisites: Method R Workbench requires a 64-bit Java Virtual Machine and a supported operating system. Installation instructions are available here.

Documentation: Comprehensive documentation is available here and here.

Version history: Detailed release notes are available here.

License key: Method R Workbench requires a valid license key to run, even in trial mode. A trial license key permits use of all Workbench features, but only upon the sample trace files that are distributed with the product. A full license key permits use of all Workbench features upon any trace file. A license key is valid for a pre-defined duration.

Software License Agreement: The Software License Agreement is available here.