・長年進化を続けてきた Storage Scale(旧称:GPFS)
今回は、約30年にわたり多くのユーザーに利用されてきたファイルシステム「Storage Scale」(旧称:GPFS)について、あらためてご紹介します。
Storage Scaleはこれまでに、階層化、S3アクセス対応、バックアップ製品との連携、ファイルシステム間のリモートコピー機能など、数多くの機能拡張を重ねてきました。その結果、現在では"スーパー多機能ファイルシステム"とも呼べるほどに進化を遂げ、今もなお発展を続けています。
しかし、その多機能性の裏にある本質的な価値は、「複数のノード間で高速かつ効率的にファイルを共有できるローカルファイルシステム」であるという点にあります。
Storage Scaleは、当初「General Parallel File System(GPFS)」という名称で登場しました。IBMの超並列コンピューター「RS/6000 SP2」向けに、高速な分散共有ファイルシステムとして開発されたのが始まりです。すなわち、何十台、何百台という計算機がファイルアクセス時にボトルネックを起こすことなく、高速に共有できる環境を実現するために設計されたのです。
本記事では、そんなStorage Scaleの基本的な使い方やイメージについて、シンプルな事例を交えながらご紹介していきます。
・一般的なファイルシステム
Storage Scaleの基本を理解するために、まずは一般的なファイルシステムについて簡単に説明します。
一般的なファイルシステムは、一台のコンピューターによって管理されているため、他のコンピューターから同時に利用することはできません。これは、ファイルの状態に関する情報を把握しているのが、そのファイルシステムを管理しているコンピューターだけであるためです。人間が他人の頭の中を直接読み取れないのと同じです。

この制約を乗り越えるために登場したのが、NFS(Network File System)です。NFSは、サーバーとクライアント間でファイル共有を可能にする仕組みであり、1984年にサン・マイクロシステムズによって発表されました。その後もバージョンアップが重ねられ、現在でも多くのITシステムで採用されています。

しかし、NFSには弱点もあります。クライアント数が増加すると、すべての通信が1台のNFSサーバーに集中してしまい、パフォーマンスに問題が生じる可能性があります。また、ネットワークを介するため、ファイル操作命令をネットワークパケット内に埋め込むという追加の処理が必要となり、これが遅延原因の一つとなることもあります。
・複数サーバーでファイルシステムを共有可能な Storage Scale
Storage Scaleは、ひとつのファイルシステムを複数のサーバーで共同管理できるよう設計された共有ファイルシステムです。以下の図(図3)は、その構成イメージを簡潔に示したものです。

Storage Scaleのサーバー群は互いにファイル管理情報を連携し合うことで、同時に同じファイルシステムへアクセス可能になります。これは、アクセスが単一サーバーに集中するNFSのような構成と比べ、大きなアドバンテージです。また、各サーバーが直接ストレージデバイスにアクセスできるため、ネットワーク経由のプロトコル変換が不要となり、オーバーヘッドの削減にもつながります。
さらに、Storage Scaleはネットワーク経由のファイル共有機能も備えています。複数のStorage Scaleサーバーが同時にファイル共有サービスを提供するため、アクセスが分散され、1台のサーバーに負荷が集中することがなく、ボトルネックを回避できます。
現在では様々な機能を持つStorage Scaleですが、最も基本的な共有ファイルシステムとしての価値をご理解いただけましたでしょうか?
最後に、Storage Scaleの最も基本的な機能を使った実際のシステム構築事例をご紹介します。
図.4 は複数の計算サーバーにてStorage Scaleファイルシステムを構成した高速ファイル処理システムです。

このシステムにおけるファイルの流れは、以下の通りです:
① 日本全国から集められた観測データを、データ収集サーバーを経由して取り込む
② 取り込んだ観測データを解析サーバーで読み込み、解析処理を実行する
③ 処理後の解析結果を保存する
④ 保存された解析結果を、配信サーバーを通じて次の工程に送信する
この一連の処理(①~④)におけるファイルI/Oの最大の特徴は、複数のサーバーから高速かつ同時に、単一のネームスペースとしてファイルへアクセスできる点です。
Storage Scaleでは、一般的なNFSのように特定のファイルサーバーにアクセスが集中することがなく、ネットワークのボトルネックが発生しにくい構造となっています。また、TCPやUDPといった一般的なネットワークプロトコルを介さず、ファイバーチャネルのみを用いたアクセスを行うことで、高速かつ低遅延なファイルI/Oを実現しています。
近年では、このような設計のシステムは少なくなってきましたが、高速分散ファイルシステムの原点ともいえるこの構成こそが、Storage Scaleの真価を最も発揮できる形だと考えています。今後、もしこのようなシステムの構築に関わる機会があれば、ぜひ前向きに取り組みたいと思っています。
※ 本資料に記載されている会社名・サービス名・製品名等は、当社または各社の商号、商標または登録商標の場合があります。