概要
多くのSEはシステムの性能評価が不得手です。そのため、お客様がシステム性能の主導権を握れると、コスト削減・品質向上につながります。バッチ処理の性能改善事例を使い、性能問題の裏にある本質を皆さんと一緒に考えていきます。事例は富士通メインフレーム上のものですが、改善へのプロセスや本質はどのメーカでも共通点があると思います。
今回は、「バッチ処理が遅い」ことについて考える。遅いと認識するには比較する対象が必要であり、これがないと遅いことに気づかず、問題意識も生まれない(よくあるケース)。 比較する対象には、①業務目標、②システム自身、③システム目標などが考えられ、それぞれ、①’朝6時までに夜間バッチが終わらない、②’通常10分の処理が1時間以上かかる、③’見積りの倍以上の時間がかかる、といった例があげられる。 SEに③’を指摘された経験はほとんどないが、この感性がとても重要である。 遅い原因をシステムから見ると、a)必要な処理をしていた、b)余分な処理をしていた、c)待たされていた、の3つである。 事例を使って、バッチ処理が遅い本質を見ていきたい。
- 目次
- 事例4~データベースの創成処理(リロード)が遅い
- 図4 システムの稼動状況(リロード処理の実行時)
- 表3 改善結果の推移
- 事例5~夜間バッチ処理を速くしたい(前半)
- 表4 システムから見た問題点
事例4~データベースの創成処理(リロード)が遅い
レコード件数60万件、レコード長500バイト(300MB)のデータベースを創成する(リロード)のに2時間かかっているが妥当なのかとの相談を受けた。なお、この処理が実行されているときのシステム資源には十分余裕がある(図4)。
図4 システムの稼動状況(リロード処理の実行時)
表3 改善結果の推移
■考察(本質)
IN/OUTのデータ量などから、およその処理能力を把握し、
遅いか否かを客観的に判断することができる。
3のDで83%の性能改善が実現されたとしても、
処理能力はまだ300MB×1.36/1,608=0.25MB/Sである。
これはデータベースがランダム性を重視しているため、
1ページ(ブロック)に2~3件(1.5KB)のレコードしか
格納していないためである。ブロッキング効率が上げれば
10倍以上の性能向上が期待できる。
事例5~夜間バッチ処理を速くしたい(前半)
問題の特定ができていないが、何しろ夜間バッチ処理を速くしたいケースを考える。メインフレームでは一晩に1,000本以上(万の単位もある)のジョブが実行されており、これらを一本ずつ見ていくのは現実的でない。まず、何時間短縮したいのか、システムから見てこれは現実的なのかを把握する必要がある。事例を使ってこの改善プロセスを紹介する。図5にはCPUの使用状況を示す。
表4 システムから見た問題点
■課題設定
業務要件とシステムの状況をすり合わせした結果、処理時間の2時間短縮(10時間→8時間)を目標と設定した。これを実現するための課題は以下の3点である。 CPU使用率100%で運用できる環境を構築する。 無駄に使っている資源(CPU、I/O)を削減する。 I/Oネックを起こさないようよう負荷分散を図る。
■考察(本質)
現状を見える化し、システムから見た問題を正確に把握することが最初のステップ。 CPU使用率100%で運用できるのがメインフレームの強み。 例題1~以下のバッチ処理は遅いか否か、またその理由は?
連載一覧
筆者紹介
株式会社アイビスインターナショナル 代表取締役
1963年生まれ。1985年富士通株式会社入社。1992年~2003年まで社内共通技術部門で国内外のメインフレームの性能コンサルティングを実施、担当したシステム数は1,000を超える。2000年からは大規模SIプロジェクトへの品質コンサルティング部門も立ち上げた。
2004年に株式会社アイビスインターナショナルを設立。富士通メインフレームの性能コンサルティングとIT統制コンサルティングを行っている。
技術情報はhttp://www.ibisinc.co.jp/で公開中。富士通やSI’erからのアクセスが多い。
当サイトには、同名シリーズ「富士通メインフレームの本質を見る~IT全般統制の考え方」を3回、「富士通メインフレームの本質を見る~バッチ処理の性能評価と改善事例から」を6回、「富士通メインフレームの本質を見る~CPUリプレースの考え方」を3回、「富士通メインフレームの本質を見る~性能改善の現場」を7回、「富士通メインフレームの本質を見る~2009年度の最新トッピックス」を3回、「富士通メインフレームの本質を見る~2008年度の最新トピックス」を2回にわたり掲載。
コメント
投稿にはログインしてください