このページの本文へ

プリンストンが販売する高機能ストレージ「Drobo」を活用しよう 第21回

米国特許「Filesystem-Aware Block Storage System, Appratus, and Method」

Droboの仕組みが分からない? ならば特許を見よう

2017年02月07日 11時00分更新

文● 飯岡真志、編集 ●金子/ASCII.jp

提供: プリンストン

  • この記事をはてなブックマークに追加
  • 本文印刷

Droboのデータ領域は「ゾーン」単位で構成される

 続いて、Drobo側のデータの持ち方を紹介しよう。Droboでは記憶領域全体を「ゾーン」と呼ぶ仮想的な領域に分割して管理している。ゾーンの実効容量は特許の例では1GBとなっているが、製品では異なっているかもしれない。

Droboのデータ領域はゾーン単位に分けられる(特許公告の図版に編集部で着色)

 ゾーンは、複数の物理ドライブにまたがった仮想の領域だ。実際に記録できる容量で管理されるため、多くのドライブにまたがっているほど、実際に消費される容量は少なくなっていく。FIG.7の例では、1GBのデータを記録するために、1台(Zone A)または2台(Zone B)のドライブ上にあるゾーンは2GBを要するのに対して、3台にまたがるZone Cは1.5GB、4台にまたがるZone Dは1.33GBとなっているのが分かる。

 FIG.7のZone Aは「シングルドライブミラー(Single Drive Mirror)」と書かれているが、これは1つのドライブ上にデータを複製して記録していることを示す。Droboではデータを保護するために、あるデータを1つのドライブの1箇所だけに記録することはない。たとえば2つのドライブが搭載されていれば、ミラーリング(RAID 1)のように同じデータをそれぞれのドライブにコピーする。3つ以上のドライブがある場合は、データに冗長性を持たせるためのパリティを付加したうえで、各ドライブに分散して記録する。

 万が一トラブルにより記録できるドライブが1つになってしまった場合でも、1つのドライブ内にデータを複製して持つ。これがシングルドライブミラーの状態だ。このドライブ全体にアクセスできなくなってしまった場合は、このような複製は無意味だが、一部が読み出せなくなるようなトラブルであれば、これでも一応冗長性が保たれていると言えなくもない。実際には、この状態になったら、直ちにHDDの追加を促すようになっている(実際にDroboを運用する際には、シングルドライブミラー状態はレアケースである)。

 複数のドライブにまたがるゾーンだが、各ドライブ上における領域の位置を揃える必要はない。異なる容量のHDDを有効利用するDroboだから、それは当然のことだろう。

 またFIG.7から想像できるように、4台のHDDから構成されるシステムであっても、4台にまたがるストライピングだけでなく、3台のストライピング、ミラーリングなどの混在が許容されている。HDDを追加した場合でも、既存のゾーンをすぐにリビルドはしないということだ。DroboにHDDを追加すると、ほんの数十秒で実効容量が増加するのはこのためだ

ゾーンの中には「リージョン」

 前述のゾーンは、いくつかの「リージョン」と呼ばれる単位に分割される。ゾーンがいくつのリージョンに分割されるかは、搭載されているドライブの台数によって、以下の表のように変わってくる。

ドライブの台数ゾーンあたりのリージョンドライブあたりのリージョン
12424
22412
3186
4164

 きちんと割り切れないが、1つのリージョンはだいたい83MB程度となる。リージョンそのものは連続している必要があるが、ゾーン内のリージョン同士は必ずしも連続している必要はない。そのため、HDDの追加や交換によって生じるリージョンの移動が効率良く行えるというわけだ。

ルックアップテーブル

 Droboでは、実際に搭載されているHDDの容量に関わらず、OSからは固定サイズのドライブとして見えている。たいていの場合、その固定サイズは実容量よりも大きい。仮に搭載しているHDDの合計容量が2TBだとしても、Droboは「先頭から3TBの位置にある領域に記録して」というオーダーを受けて実行できる。

仮想ボリュームと物理ドライブの間にルックアップテーブル(Lookup Table)を持つ(特許公告の図版に編集部で着色)

 これが可能なのは、FIG.8に示したような仮想ボリュームと実ドライブの間に、ルックアップテーブル(対照表)を介しているからだ。仮想ボリューム上のアドレスが、実際のドライブのどの位置に相当するのかを記録している。この仕組みは、コンピューターの仮想メモリーの管理方法とだいたい同じようなものだ。

 またこの仕組みを採用しているため、ルックアップテーブルを複数用意することで、簡単に複数のボリュームを使用できるというわけだ。


 

(次ページ、「使用できない領域が出るのは?」に続く)

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

ピックアップ