X

クライアントOSで記憶域スペース:(1)Windows 8、Windows 8.1 で利用できる記憶域スペース(記憶域プール)とは

記憶域スペースとは

Windows 8、Windows 8.1 では、Microsoft のストレージ仮想化技術、「記憶域スペース」を利用できるようになりました。「記憶域スペース」は、Microsoftが自社がサービス提供事業者となってOneDrive(旧称:SkyDrive)や、Outlook.com、Azureなどのサービスを提供するにあたり、拡大するストレージ使用量を、大容量かつ安価な一般向けストレージを利用しつつ、高パフォーマンスや耐障害性、管理/メンテナンスコストの低減を実現するために開発した技術です。

Microsoftはこの技術を、クラウド上でテナント向けサービスを提供するマルチテナンシー向けの機能として、Windows Server 2012 からサーバーOSに搭載をしました。同時にWindows 8 以降でも、エンタープライズ向けとして開発したこの機能を、クライアントOSでも同じ技術をほぼ制約なく利用できるようになっています。

ホームユースでも、増え続ける大量のデジタルアセットを、手軽にバックアップをとりつつ保存したいというニーズから、NASや一部高リテラシー層にはRAIDなどが普及(そして恐らくこのブログの読者層の大半はかつてWindows Home Serverを利用)していますが、この記憶域スペースを利用することで、エンタープライズレベルの耐障害性備えた大容量仮想ストレージのメリットを個人でも享受することができます。

記憶域スペースのアーキテクチャーについては以前、ホワイトペーパーを執筆させていただき、Microsoftから公開しましたので、詳細はそちらを参照頂くとして、これから数回に分けて、クライアントOSで記憶域スペースでの利用について解説したいと思います。

記憶域スペースにおける用語の定義

「記憶域プール」と呼ぶ人が多いようですが、テクノロジー全体を指す場合には「記憶域スペース」(Storage Spaces)が正しい名称です。

一方で、この記憶域スペースという言葉は、仮想ストレージ上に構築する仮想ディスク(ボリューム)を指す場合にも利用されているため、用語の用法という点ではやや洗練されていない印象も拭えません。ここでは、以下のように用語を定義します。TechNetライブラリーなどで、和訳されていないドキュメントを参照する場合に参考となるよう、英語表記も記載します。

用語 英語表記 概要
記憶域スペース Storage Spaces MicrosoftがWindows Server 2012、Windows 8 以降に追加した、複数の物理ディスクから回復性を備えた仮想ディスクを作成する機能の総称。
記憶域プール Storage Pool 複数の物理ディスクを1つの物理ディスクであるかのように扱える、複数の物理ディスクを束ねた集合。
仮想ディスク Virtual Disk
(Storage Space)
記憶域プール上に作成する、仮想ディスク。作成した仮想ディスクは、ボリュームとしてOSから認識される。
仮想ディスクは、回復性を選択して作成することができる。
Microsoftはこの仮想ディスクのことを、記憶域スペース(Storage Space)という場合と、機能の総称を指している場合があるため、以降は仮想ディスクと呼ぶ。
シン・プロビジョニング Thin provisioning 記憶域プールの領域を確保せず、仮想ディスクを作成すること。記憶域プールの空き容量(物理ディスクサイズの合計-使用済領域)に縛られることなく、仮想ディスクを作成することができる。

仮想ディスク作成後に、必要に応じて仮想ディスクのサイズをより大きくあとから変更することも可能。

記憶域プールの領域を確保して仮想ディスクを作成する場合は、固定プロビジョニング(Fixed Provisioing)を用いる。

回復性 Resiliency Type データを記憶域プール内の物理ディスクに保存する方法により、シンプル、ミラー、パリティの3種類の回復性がある。さらに、ミラーには双方向ミラーと3方向ミラー、パリティにはシングルパリティとデュアルパリティのタイプがある。
これらによりデータの冗長性が特徴付けられる。
記憶域のレイアウト Storage layout GUI上で用いられる表記。回復性のうち、シンプル、ミラー、パリティのいずれかを選択する。
回復性のタイプ Resiliency Settings GUI上で用いられる表記。ミラーのうちの双方向ミラーか3方向ミラー、パリティのうちのシングルパリティ、ダブルパリティのいずれかを選択する。
記憶域階層 Tierd Storage 高速な物理ディスク(SSD)と高速ではない物理ディスク(HDD)を用いて、SSDとHDDの良いとこどりをする技術。よく利用するファイルはSSDに保存することにより実利用上のスループットを高めつつ、頻度の低いファイルは安価かつ大容量なHDDに保存することでディスク容量も確保できる。
ライトバックキャッシュ Write-back chache SSD上の領域を書き込みキャッシュとして利用することで、ファイル書き込み速度を向上させる技術。物理ディスクにファイルを保存する際に、まずSSD上のキャッシュにファイルを書き込むことで、ワークロードの処理を高速に終了させ、その後SSDからHDDにファイルを書き込む。

 

RAIDやZFSとは何が違う?

RAIDは非常によく知られた技術ですが、記憶域スペースのアーキテクチャーはRAIDと非常によく似ている一方で、同一容量のHDDを利用する必要があるといった制約がない、ハードウェアRAIDのようにRAIDをサポートしたチップセットは必要ない、シンプロビジョニングのサポートやプール上に複数のボリュームの構築が容易といった点が違いとして上げられるかもしれません。

ZFSとも似ていますが、ZFSのようにCUIではなくWindowsの使い慣れたGUIから管理ができる敷居の低さ(実際には本当に使いこなすにはPowerShellが必要不可欠なのですが)、ZFSともRAIDとも異なるのは、回復性が記憶域プールではなく仮想ディスクと紐付いているため、ワークロードの特徴に応じ、記憶域プール上に柔軟な仮想ディスクの展開、使い分けが可能といった点が大きな特徴と考えています。

記憶域スペースで必要となるハードウェア

HDD

HDDはSATAあるいはSAS接続のHDDまたはSSDがサポートされています。Windows 8 や Windows 8.1 ではクラスターの記憶域として利用することはできないため、一般的に市販されているSATAディスクが通常用いられるはずです。

HDDのおすすめは、NAS用に開発されたWDのREDシリーズです。

HBA

マザーボード上のSATAポートが足りないなどの事情で、外付HDDを利用する場合、USB 3.0 接続(USB 2.0 は推奨されません)または e-SATA、SAS接続を用いることができます。e-SATAやSASで接続する場合、HBA(ホストバスアダプター)が必要になる場合があります。

HBAは、RAID機能備えないHBAか、あるいはRAID機能を完全にオフにできる(non-RAIDやJBODモード)機能を備えたHBAを選定します。

外付HDDケース

USB接続、e-SATA接続、SAS接続の場合、外付HDDケースを用いるのが一般的です。電源容量の問題なども考慮し、接続するHDDの台数が多くなる場合は、敢えて内蔵ディスクではなく、外付HDDケースを利用することも検討する必要があります。

記憶域スペースからのOS起動は不可

記憶域スペースは、現時点ではあくまでシステムディスク以外の、データ保存用に用いられるディスクのための機能です。記憶域スペースを用いて、システム領域の冗長性を高めることはできません。特に従来RAIDを利用してきた国内のエンタープライズ分野において記憶域スペースの採用が進まない理由として、この点をあげる向きもあります。

ReFSと一緒に使用することで、更にファイルの破損に強く

記憶域スペースは、物理ディスクの障害からデータの消失を防ぐための仕組みですが、Windows Server 2012 で導入された新たなファイルシステムReFSは”ビット腐敗”のような、物理ディスクの致命的な障害とまでは至らないような原因で起こるデータ消失を防ぐ仕組みといえます。ReFS と記憶域スペースは異なるレベルのディスク障害に対する相互補完的な仕組みとなっており、これらを一緒に利用する(記憶域スペースで作成した仮想ディスクを、ReFSでフォーマットする)ことで、ReFSの”整合性ストリーム”と呼ばれる仕組みで、ReFSがファイルの破損時を自動的に検知し、記憶域スペースの回復性を用いてファイルの自動修復を行うことが可能となります。Windows 8ではReFSの使用はできませんでしたが、Windows 8.1ではミラースペース(双方向ミラー、3方向ミラー)を利用する場合に、ReFSがサポートされています。

次回は、Windows 8、Windows 8.1 での記憶域スペースの構成方法を解説します。

ださっち: