前回はDBT-1のテストを実行し、さまざまな出力結果を生成した。この出力結果を見ていく上で、ひとつひとつのファイルを開いてチェックしていくのもちょっと面倒だ。また、テスト中のシステムのパフォーマンスに関する情報は、実際の数値だけでなく、グラフィカルに可視化して欲しいと思うのが人情というもの。そこでDBT-1には、出力結果からHTMLやグラフを生成し、レポートを見やすい形で作成するツールも付属している。今回はこれを試してみよう。

まず実行に先立って、結果レポートツールが必要とするPerlモジュールをセットアップする必要がある。DBT-1の配布ファイルにある「perlmodules」ディレクトリに含まれる「Cal_average_std.pm」と「Data_report.pm」の2つのファイルを、あらかじめPerlのモジュールディレクトリにインストールしておこう。筆者の場合は、/usr/lib/perl5/5.8.5/にコピーした。また、グラフの生成にはGNUプロジェクトのプロットツールである「gnuplot」も必要なので、これもあらかじめインストールしておこう。

準備が整ったら、早速結果レポートツールを実行してみる。まず、DBT-1の「data_collect」下にある「resulttools」ディレクトリに移動しよう。


$ cd data_collect/resulttools 

このディレクトリにある「wb_dbt1_report_pgsql.pl」が結果レポートを生成するPerlスクリプトである。実行の際は、-oオプションで出力先のHTMLファイル名を、-iオプションで、テスト実行時の「out_dir」を、つまり結果ファイル群が出力されているディレクトリを指定する。


$ ./wb_dbt1_report_pgsql.pl -o A.html -i /tmp

これで、結果レポートが「A.html」として生成される。

ただ、注意しておきたいことが1点ある。上記の例では結果ファイルのディレクトリを絶対パスで指定しているが、これだとA.htmlから各結果ファイルやグラフの画像に張られるリンクが正しいパスにならない。/tmp以下の結果ファイルや、「/tmp/plot」以下に生成される各種グラフ類を、A.htmlの生成後に正しいパスになるようにコピーするなどの対応が必要だろう。

さて、生成された結果レポートのHTMLファイルをWebブラウザで開いてみよう。

生成された結果レポートのHTMLファイル(1)

まず最初に「Configurations」として、テストを行った環境のOS、PostgreSQLのバージョン、ハードウェアのCPUやメモリといった情報が、実行時の設定パラメータと一緒に表示されている。下にスクロールすると、前回解説した最も重要な結果ファイル「BT」の内容、それからvmstatやiostatのデータとグラフなどへのリンクが表示されている。

生成された結果レポートのHTMLファイル(2) - スクロールしたところ

例えば、「run.vmstat_cpu.png」は、テスト中のCPUの使用率を表すグラフだ。

テスト中のCPUの使用率を表すrun.vmstat_cpu.png

このグラフでは、CPUの「%user(赤)」、「%sys(緑)」、「%idle(青)」、「%iowait(紫)」のそれぞれの値が、60秒ごとに取得したデータをもとに描画されている。%idleががくっと減ったりしていなければ、CPUのパフォーマンスとしてはまだまだ余裕があるということだ。

また、「run_iostat_read_sec.png」を見ると、ディスク装置からのデータの読み込みがどのぐらい発生しているかを知ることができる。

ディスク装置からのデータの読み込みを知るためのrun_iostat_read_sec.png

これらはあくまでも簡易的に自動生成されるグラフなので、Excelのように見栄えの良いものではない。しかし、手早くテスト結果を確認するには便利である。なお、DBT-1が結果として出力しているのは、iostatやvmstatといった、LinuxやUNIXでは一般的なパフォーマンス統計ツールを利用したものがほとんどだ。当コラムの第6回でも簡単に紹介したが、sar、vmstat、iostatといった基本的なコマンドは、Linux/UNIX系のシステムを利用するならば、ある程度理解しておいた方がよいだろう。