1本の電話
ある寒い朝、私は電話を受けた。「新しいディスクは毎秒100Mバイトのスピードが出るとおたくの営業から聞いたのに、部下に計らせたら毎秒10Mバイトしか出ない」と、大層ご立腹のお客様。私はコンピュータメーカーのエンジニアだ。さて、どのように説明したら、円満にお客様との溝を埋められるだろうか。
この電話への対応パターンとしては、以下の3つの選択に集約されるように思う。1つ目は、「これは大問題だ。社内のディスク専門部隊に至急連絡して即座に対応させよう」といった単純思考で熱血に対応するパターン。2つ目は、私がここで書こうとしていることを理解していて、その説明を試みるもの。3つ目は、「最近の高機能ディスクは、いろいろなことが起こりえる、何があっても不思議じゃありませんよね」と答え、ディスク装置がブラックボックス化していることをアピールするパターン。これでお客様を納得させられるかはともかく、現状を是として押し通す輩(やから)が…… おっと失礼、一部とは言え賢明な読者を輩呼ばわりしてはいけない。
処理スピードの基本
現在の多くのビジネス環境では、ディスクやテープ装置といったストレージ装置とサーバとのデータ転送は、FCP(ファイバーチャネルプロトコル)にて行われていることが多い。そこでのデータ転送速度は、現時点では毎秒2Gビットのものが一般的で、毎秒4Gビットのものが普及しつつあるというのが昨今の状況である。
このデータ転送速度とはいったい何者か。賢明な読者なら理由はともかく、このデータ転送速度はまやかしもので、一概に信じ込んではいけないものであることはご存知だろう。そもそも、データをサーバからディスクに書き出す場合には、ディスクのデータ受け入れのスピードがボトルネックとなって、毎秒2Gビットものスピードを常時維持することはできない。ディスクからテープにデータを転送するような場合には、ディスクの読み込みのスピードとテープへの書込みのスピードとどちらか遅いほうがボトルネックとなる。
それでは、話題を最初のエピソードに戻そう。営業が新しいディスク装置は毎秒100Mバイト出るといった。しかしお客様が測定したら毎秒10Mバイトしかでなかった。これは白黒つけねばなるまい。
実際に測定した結果は正しいはずなので、これは営業のセリングトークが原因であったのか。営業担当に確認すると、社内測定データを基に提示しており、その数値に間違いはないと言う。それでは、両方正しいということになる。ブラックボックスなのだから、何があっても不思議ではない。う〜む。これではこのコラムの意味がない。
そろそろ謎解きにかかろう。答としては、両方とも正しいというのが正解である。なにしろ両方同じサーバ、同じディスク構成で測定されているのだから。実際、原因には複数の要因が考えられるが、ここではデータの入出力処理(I/O処理)の基本を理解する上で知っておくべき典型的な要因を紹介しよう。それは、1回のI/O処理で転送されるデータの長さである。