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.
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
- Any time you need to know how long a program takes and why
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.
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.
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.
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”:
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).
Sample Method R Profile
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.
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.
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.
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.
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’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.
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.
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.
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: you can drag and drop directly from Method R Trace into the Workbench files pane.
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_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.
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.