Interested in better understanding storage I/O workloads? Then take some time to learn more about SWAT and Vdbench. In two separate BestPerf blog entries, Henk Vandenbergh describes the storage agnostic Sun StorageTek Workload Analysis Tool, known as SWAT, detailing its features and the disk and tape I/O workload generator called Vdbench.
SWAT
As Vandenbergh explains, SWAT is a host-based, storage-centric Java application that thoroughly captures, summarizes and analyzes storage workloads for both Solaris and Windows environments. Besides I/O reporting, SWAT also can help users with problem analysis, configuration sizing and trend analysis.
SWAT reports the host's view of the storage performance and workload, using the same Kstat (Solaris) data that iostat uses. Major functions it performs:
- Swat Performance Monitor (SPM): Currently works on Solaris and Windows, but Vandenbergh states that progress is being made toward data collection on AIX and Linux. It collects I/O performance statistics every 5, 10, or 15 minutes and writes the data to a disk file, one new file every day, automatically switched at midnight.
- Swat Trace Facility (STF): Collects detailed I/O trace information, generating hundreds or thousands of second-by-second statistics counters. It runs between 30 and 60 minutes during a time when an expected performance problem is to occur. STF is currently limited to the collection of about 20,000 IOPS and it does require root access.
- Swat Trace Monitor (STM): Runs an in-memory trace and then monitors the overall storage performance. Once a threshold is reached, the in-memory trace buffer is dumped to disk and the trace then continues collecting trace data for an amount of seconds before terminating.
- Swat Real Time Monitor: Opens a Java socket connection with a host having an active Data Collector, so that active monitoring of the current storage performance either from a local or remote host can be done.
- Swat Local Real Time Monitor: Starts a private Data Collector for a local system by just entering './swat -l' and then reports on the activity of the current storage workload.
- Swat Reporter: All data collected by the above SWAT functions can be displayed using this GUI reporting and charting function. Information can be reported in a variety of available charts and SWAT will create JPG files that can be included in documents and/or presentations. There is also a SWAT Batch Reporter that automates the JPG generation.
Vdbench
Vandenbergh's disk and tape I/O workload generator is written in Java (and a little C, he notes) and runs on Solaris SPARC and X86, Windows, AIX, Linux, zLinux, HP/UX and OS/X. It allows detailed control over numerous workload parameters.
It is centrally controlled, running either on a single host or on multiple hosts concurrently, and generates a second-by-second report on various statistics, including performance and Kstat, in HTML files. The GUI allows for comparative results between two different Vdbench workload executions for easy analysis. Vdbench works with SWAT and can automatically create JPG files of performance charts.
Vdbench incorporates Data Validation, which Vandenbergh describes as sophisticated methodology to assure data integrity by writing unique data contents to each block and then comparing after the next read or before the next write. Data can be written to disk in one execution of Vdbench with Data Validation and then continued in a future Vdbench execution to make sure that after a system shutsdown all data is still there.
Additionally, Vdbench can replay a disk I/O workload traced with SWAT on any test system to any type of storage. This means a production I/O workload can be traced and then replayed on whatever storage desired and at a different location. Describing the process more in depth, Vandenbergh writes: "Want to see how the storage performs when the I/O rate doubles? Vdbench Replay will show you. With this you can test your production workload without the hassle of having to get your data base software and licenses, your application software, or even your production data on your test system."
More Information
Storage performance and workload analysis using Swat - Vandenbergh's blog entry
Vdbench: Sun StorageTek Vdbench, a storage I/O workload generator - Vandenbergh's blog entry
SWAT Download
Vdbench Download
[...read more...]