SSDとHDDを組み合わせた独自の「ハイブリッド型」アーキテクチャ
Nimble Storageは2010年に創業されたばかりの、米国の新興ストレージベンダー。SSDとHDDを組み合わせた独自の「ハイブリッド型」アーキテクチャが高い評価を受け、ユーザー数を急速に伸ばし続けている。
とはいうものの、SSDとHDDを混在させたストレージ製品は、近年では決して珍しいものではない。一体、どのあたりに同社の製品に固有の特徴があるのだろうか? Vasudevan氏によれば、Nimble Storageのストレージ製品は、他社製品には見られない極めてユニークな設計思想に基づいて作られているという。
「他社のSSD採用ストレージ製品のほとんどは、HDDを前提とした旧来のアーキテクチャの中に、後からSSDを導入している。一方、Nimble Storageのストレージ製品は、当初からSSDなどフラッシュメモリストレージの使用を前提にアーキテクチャを設計しているため、SSDの利用効率に極めて優れる」(Vasudevan氏)
Nimble Storage製品に搭載されるソフトウェアは、SSDの利用効率を最大限に高め、システム全体として最高のスループットを引き出せるよう設計されているという。そのため同氏によれば、SSDとHDDを混在させてティアリング(階層化)を行う一般的なストレージ製品と比べ、Nimble Storage製品は3分の1から5分の1のハードウェアリソースで同等のパフォーマンスを達成できるという。
もう1つの大きな特徴は、運用の容易さにあるという。近年、企業が抱える業務データの容量は増加の一途を辿っている。それに伴い、ストレージの容量や規模も拡大し、その運用に掛かる手間やコストの増大が問題化しつつある。そのため各ストレージベンダーとも、自社製品の自動管理機能の開発に力を注いでいる。
しかしNimble Storageは、自動かのさらにもう一歩先を行く運用管理の在り方を実現しているという。
「これまで、ストレージ製品の運用管理はユーザーが直接行うものだったが、われわれはクラウド技術を活用することで、この常識を打ち破った。すなわち、すべてのNimble Storage製品の状態を、クラウド環境上にあるわれわれのサポートセンターから集中監視し、何か問題を検出したり、あるいは問題が起こりそうな予兆を検知した場合にはユーザーにアラートを通知する。こうした仕組みを提供することで、ユーザーがストレージ管理に費やす手間やコストを劇的に削減できる」(Vasudevan氏)
さらにもう1つ、データ保護の観点でも旧来のストレージ製品にはない特徴を持つという。具体的には、独自のスナップショット機能やレプリケーション機能に高効率のデータ重複排除技術や圧縮機能を組み合わせることで、バックアップデータを外部のバックアップディスクにではなく、自らの中に保管することができるという。
これによって、従来とは比べものにならないほど高速なバックアップが可能になる。事実、Nimble Storage製品を導入したユーザーの多くは、それまで日次バッチ処理で行っていたバックアップを、30分おきに実行するようになっている」(Vasudevan氏)
SSDの利用効率をソフトウェア機能で最大化する「CASL」技術
Nimble Storage製品には、こうした設計思想に基づいて開発された先進機能が、それこそ「てんこ盛り」で実装されている。紙幅に限りがあるため、そのすべてをここで紹介することはできないが、中でも特にユニークだと思われる技術を2つほど紹介してみたい。
1つは、Nimble Storage独自の特許技術「CASL(Cache Accelerated Sequential Layout)」。ソフトウェア処理でSSDの利用効率を最大化するための、諸々の技術の集合体だ。一般的に、SSDを採用するストレージ製品ではリードおよびライトのキャッシュとしてSSDを活用することで、ストレージシステム全体のスループット向上を図っている。
リードキャッシュとしての利用法は、ティアリング(階層化)の仕組みと一体になっており、アクセス頻度の高い「ホットデータ」がHDDからSSDのリードキャッシュにコピーされる一方、アクセス頻度の落ちた「コールドデータ」がSSDからHDDに書き戻される。また、ライトキャッシュとしてHDDの手前にSSDを配置することで、I/Oの待ち時間を減らすことができる。
しかしVasudevan氏によれば、こうした方式には2つの欠点があるという。
「ライトキャッシュには一定期間データが保管されるため、RAIDを使ってデータを保護する必要があり、また書き込み耐性の高いSSDを利用する必要があるため、かなりコストがかさんでしまう。また、リードキャッシュとして使う場合も、HDD/SSD間のコールドデータ・ホットデータのやりとりをGバイト単位のブロックで行うため、無駄なデータが多く含まれており、SSDを効率良く活用できているとは言い難い」
そこでNimble Storageは、CASLでこれら欠点の克服を目指したという。まずデータ書き込みに関しては、SSDを「ライトキャッシュとして使わない」。その代わり、アプリケーションからデータ書き込みのリクエストが入ってきたら、まずはソフトウェアでデータを圧縮し、さらに複数のライトI/Oのリクエストをキャッシュして単一のI/OにマージしてからHDDに送る。こうすることで、データ量とI/O数を劇的に減らし、結果としてSSDをライトキャッシュとして使用せずとも高いスループットを実現しているのだ。
なおリードに関しては、SSDをリードキャッシュとして利用するが、HDDとの間でコールドデータ・ホットデータをやりとりする際にもデータを圧縮し、さらに4Kバイトの細かいブロック単位でデータを転送するため、無駄なSSD領域を減らすことができる。
「ライト処理ではほとんどSSDを使わないため、書き込み耐性の低い安価なSSDでも十分に事足りる。また、SSDの寿命を延命できる機能もソフトウェアで実装している。このように、Nimble StorageはSSDの利用効率をソフトウェアの機能で最大化することで、高パフォーマンスと大容量キャパシティを低コストで手に入れることができる」(Vasudevan氏)