SDSの定義はまだ確立されておらず、プロプライエタリな製品を含むかどうかも曖昧なままだ。その中にあってSNIAは分かりやすい「SDSの必須要件」を示している。今のところ、これらの要件を満たすことがSDSの定義だと考えるとよいだろう。SNIAが提唱する必須要件は次の5つだ。
■SDSの必須要件
(1)自動化
ストレージの運用を自動化し、運用の複雑性やコストを低減できる。
(2)標準化されたインタフェース
ストレージの管理や活用に関わる操作を標準的なAPIで操作できる。
(3)仮想化されたデータパス
ブロック、ファイル、オブジェクトといった多様なインタフェースをサポートできる。
(4)拡張性
可用性やパフォーマンスに影響なく、柔軟にストレージインフラを拡張できる。
(5)透過性
ストレージ利用者自身がリソース使用率やコストなどをモニタリングし管理できる。
これらの要件と図を見ると、SDSが何を目指しているか分かる。Amazon S3のようなサービスを自前で構築することと考えるとイメージしやすいだろう。
アプリケーションに最適なレベルの性能、コスト、サービスレベルのストレージを、仮想化されたストレージプールの中からソフトウェアが選んで自動的に割り当てるのがSDSのメリットだ。
アプリケーションの中にはトランザクション処理のような高速のIOPSを必要としながらデータサイズは小さいものもあれば、オーディオビジュアル系のアプリケーションのようにIOPSはそこそこでよいがデータサイズが大きいので帯域幅は広くなければいけない場合もある。画像処理、科学技術計算はどちらかといえば帯域幅が広い方がよく、BIなどの分析系はIOPSが高い方がよいかもしれない。
このように個々のアプリケーションの特性により、必要な性能が異なる。またアプリケーションのサービスレベルにも違いがある。決して止められないシステムならストレージも高信頼性でなければならないが、そんなストレージは別のアプリケーションではオーバースペック(=無駄なコスト)になるかもしれない。
仮想化以前は、アプリケーションが要求する性能とサービスレベルにふさわしいストレージをシステムごとにアタッチして、他のシステムでは利用できなかった。
しかし、ストレージを個別システムから切り離して、どのシステムからでも使えるようにすれば、性能や容量をもっと効率的に利用できる。物理ストレージを仮想化してストレージプールを作り、その中から適切な性能や品質のリソースをアプリケーションのワークロードによって選び出して適宜容量を割り当てるようにすれば合理的だ。
ただしビジネスに即応してアプリケーションが短期間で更改されたり追加されたりする現在、これを人間の手で行うのは不可能かもしれない。そこでその部分をソフトウェア化し、自動化しようというのがSDSの考え方だ。例えば次のようなメリットが期待できよう。
これらの長所は、システムコストや運用管理コストの削減に貢献するばかりではない。より重要なのは、変化への対応が迅速にできることだ。ビジネススピードが加速している中で、システム変化に呼応したインフラの迅速、柔軟な対応が以前にも増して求められるようになっている。それをストレージ領域で実現するのがSDSの重要な役割だ。
Copyright © ITmedia, Inc. All Rights Reserved.
製品カタログや技術資料、導入事例など、IT導入の課題解決に役立つ資料を簡単に入手できます。