今回と次回は、仮想化環境で検討すべきストレージ性能について、詳しく解説していきたい。

 ストレージの性能について考慮しなければいけない点はいくつかあるが、今回は特に仮想化環境におけるストレージ性能を検討する場合に最低限明確にしておかなければならないポイントを挙げておこう。一番基本的なポイントは、「ストレージに対するデータのやり取りが多いかどうか」だが、ここではデータのやり取りが多いことを前提に、以下の4点について考えていく。

(1)そのアクセスはシーケンシャルかランダムか

 ストレージへのアクセスは基本的に4KBといった単位のブロックで行われる。シーケンシャルアクセスでは、このブロックが連続して読み書きされ、ランダムアクセスは細かなブロックをバラバラに読み書きすることになる。ファイルサーバーがシーケンシャルアクセス、データベースサーバーがランダムアクセスの代表的なアプリケーションだ。

 シーケンシャルアクセスはハードディスクでもSSDでもそれほど大きな差はない。一方、ランダムアクセスになるとハードディスクは性能が大幅に劣化する。

(2)IOPSとスループット

 同じデータ量でも、シーケンシャルアクセスとランダムアクセスではストレージに対する読み書き要求数が異なってくる。例えば合計100KBのデータ量であっても、シーケンシャルならば読み書き要求数は1回、ランダムなら4KBで25回といった具合だ。

 IOPS(Input Output Per Second)は、そのストレージが1秒間に処理できるI/Oリクエストを数値化したもので、この値が多ければ多いほどランダムアクセス性能が高いストレージといえる。例えば100IOPSのハードディスクがあった場合、1秒間に100回の読み書き要求を処理することができる。

 ハードディスクの場合、回転速度が高速になるほど待ち時間が少なくなるためIOPSが高くなり、SSDはヘッド移動やディスクの回転待ちがないので高いIOPSを実現できる。ハードディスクのIOPSは100から200程度だが、SSDは数千から数万IOPSと大きな差がある。

 このIOPSが4KB単位のブロックでの値だった場合、1秒間にやり取りできるデータ量は以下のように計算できる。

100IOPS×4KB=400KB/sec

 この値がスループット値ということになる。スループットの最大値は基本的にシーケンシャルアクセスの場合である。

(3)接続パスの選択

 共有ストレージへの接続は、高速さが重要ならFC(FibreChannel)、それほど速度が必要ないのであればiSCSIやNFSなどイーサネット、TCP/IPを使用した接続方式(IP SAN)をとるのが一般的だ。FC接続は帯域幅が4Gbpsや8Gbpsと高速だが、FCスイッチのコストが高いことと、扱うことができる技術者がそれほど多くないのが難点である。

 IP SANの場合、スイッチなどのコストが安いことと、通常のネットワーク技術者でもある程度扱えることがメリットとなる。しかし、帯域が1Gbpsに制限されるので、性能が要求される場合にはマルチパス化して帯域を広げるか、10Gイーサネット化を検討する必要がある。前者は扱いにくくなる点が、後者はコスト的にFCと大きく変わらなくなってしまう点が難点といえよう(表1)。

表1●ディスクの比較
 コスト性能管理
iSCSI
NFS
FC