General Parallel File System (GPFS) はクラスタコンピューティング向けの分散ファイルシステムである。GPFSはIBMによって開発され、TOP500のリストに含まれる多くのスーパーコンピュータで使われている[1]

IBM GPFS
開発元 IBM
最新版
4.1 / 2014年5月
対応OS AIX / Linux / Windows Server 2003 R2
種別 ファイルシステム
ライセンス プロプライエタリ
公式サイト www.ibm.com
テンプレートを表示
GPFS
開発者 IBM
正式名 IBM General Parallel File System
導入 (RS/6000 SP)
構造
ディレクトリ ツリー
限度
最大ファイル サイズ 4PB
特徴
対応OS AIX 6.1/7.1, RHEL 6, SLES 11, Debian 6/7, Windows Server 2008 x64 (SP2)/2008 R2/2012 (Datacenter, Standard)/2012 R2 (Datacenter, Standard), Windows 7 (Enterprise,Ultimate) x64 SP1/Windows 8.1
テンプレートを表示

概要 編集

GPFSを使用した例にはASC Purpleスーパーコンピュータがあり[2]、12,000以上のプロセッサと11,000以上のディスクによる合計2ペタバイトのディスク記憶容量で構成されている。

他のファイルシステムと比較して、GPFSは多数のクラスターノードで実行されるアプリケーションに対して、同時並行かつ高速なファイルアクセスを提供する。GPFSはAIX 5L クラスター、Linux クラスター、Windows Server、またはAIXやLinuxやWindowsノードのヘテロジニアスクラスターで使用できる。ファイルシステムストレージの能力提供に加え、GPFSはGPFSクラスターの管理ツールを提供し、リモートのGPFSクラスターからのファイルシステムへの共用アクセスを許可できる。

GPFSは1998年にAIX、2001年からはLinux、2008年からはWindows Serverで使用可能となり、IBM System Cluster 1350の一部としても提供されている。

アーキテクチャ 編集

GPFSは多数のノードが並列にファイルデータ、ファイルメタデータにアクセスできるよう設計されている。

データストライピング 編集

一般的に物理ディスクはネットワーク[要曖昧さ回避]に比べて遅いため、高いスループットを実現するためにはデータを複数のディスクにまたがってストライピングするのが有効である。GPFSはLVMに依存することなく、自身でデータのストライピングをサポートしている。GPFSは大きなファイルを複数の同じサイズのブロックに分割して保存する。典型的には一つのブロックは256k(設定によって16kから1M)である。大きなファイルを読み込むときに、GPFSは分散されたディスクからデータを並列にプリフェッチしてバッファに蓄積しておく。同様にバッファに蓄積されているアクセスされなくなった汚れた(書き換えられた)データを並列でディスクに書き戻す。よって一つのファイルへアクセスしたときのスループットは、データを保存する各ディスクの帯域幅の合計またはインターコネクトの帯域幅が上限となる。

分散ロック 編集

GPFSはファイルの同期、一貫性についてPOSIXセマンティックスを保証している。例えば同時に同じファイルにアクセスする2つプロセスが存在するとき、読み込み側のプロセスが見えるデータは書き込みプロセスが書き込んだデータのすべて、若しくはまったく見えないかのどちらかである。読み込みプロセスはデータが中途まで書き込まれた状態を読み込んでしまうことはない。読み込みと書き込みの不可分操作性が保証されている。通常のファイルシステムでは対象をファイル単位でロックすることで、書き込みと読み込みが同時されないようにしている。

GPFSでは分散ロックを用いてファイルの一貫性を保っている。ファイルシステムノードのうち一台がグローバルロックマネージャの役割をはたし、各々のノードはローカルロックマネージャを持っている。グローバルロックマネージャはロックトークンを付与することでローカルロックマネージャ間の調整をする。一つのノードが繰り返し同じファイルへアクセスする時は初めの一回だけロックトークンを獲得すれば、その後ノード間でメッセージ交換をする必要がない。他のノードが同じファイルにアクセスする場合は最初にロックトークンを獲得したノードにロックトークンを要求する。ロックトークンを通さなければファイルのデータを変更できないため、ロックトークンは更にキャッシュの一貫性を保証する役割も果たしている。

並列データアクセス 編集

メタデータ 編集

アロケーションマップ 編集

対故障性 編集

参照 編集

  1. ^ Schmuck, Frank; Haskin, Roger (January 2002). "GPFS: A Shared-Disk File System for Large Computing Clusters" (pdf). Proceedings of the FAST'02 Conference on File and Storage Technologies. Monterey, California, USA: USENIX. pp. 231–244. ISBN 1-880446-03-0. 2008年1月18日閲覧
  2. ^ Storage Systems - Projects - GPFS”. IBM. 2008年6月18日閲覧。

関連項目 編集

外部リンク 編集