# ファイルレイアウトとストライピング
## 定義
ファイルレイアウト(ストライピング)とは、1 ファイルのデータを複数のストレージターゲット(OST 等)にまたがるオブジェクト群へ分散配置する仕組みであり、単一サーバの帯域・容量の制約を超えて並列アクセスを可能にする(Source: [[@2026__Whamcloud__Lustre Operations Manual - Chapter 19 Managing File Layout (Striping) and Free Space]])。Lustre では固定パターンの単純なストライピングに加え、ファイルをオフセット範囲ごとの複数コンポーネントとして表現する PFL(Progressive File Layout)、コンポーネント境界を空き容量に応じて動的に伸縮させる SEL(Self-Extending Layout)、Lustre 名前空間の外部オブジェクトを参照する Foreign Layout という発展形を持つ(Source: [[@2026__Whamcloud__Lustre Operations Manual - Chapter 19 Managing File Layout (Striping) and Free Space]])。
## 未解決の問い
- PFL/SEL のような複合レイアウトの考え方(オフセット範囲ごとにポリシーを切り替える段階的レイアウト)は、他の並列ファイルシステム(BeeGFS, GPFS/Spectrum Scale, WEKA 等)にも同種の機構があるか、それとも Lustre 固有の設計か。
- ストライピングの粒度(ストライプサイズ・ストライプ数)選択と、下位のオブジェクトストレージ層(OST の割り当てアルゴリズム)のチューニングは、どこまで独立に最適化できるか。
- Titan のようにストライプ幅が広いほどストラグラーの影響を受けやすい環境で、PFL/SEL はバーストサイズや実行時の OST 状態に応じて幅を安全に切り替えられるか。
- ファイル作成時の初期レイアウト配置アルゴリズム(MCMF など)と、サイズ伸張に伴い動的に OST を割り当てる Progressive/Self-Extending Layout(PFL/SEL)はどのように協調できるか。事前予測ベースの配置が、実行時拡張の判断をどう支援できるか。
## 未編纂の観察
- **[定義] ストライプ幅の拡大は並列性だけでなく、最遅ターゲットへの依存も拡大させる**: Titan の測定では、単一クライアントの良いストライプ幅は8〜16 OSTであり、336ペアの同期書き込みではストラグラーが集約帯域を律速した。広いストライプは複数ターゲットを使う一方、同期した書き込みの完了を遅いターゲットに結び付ける。(Source: [[@2020__TOS__Characterizing Output Bottlenecks of a Production Supercomputer Analysis and Implications]], [[@2026__Whamcloud__Lustre Operations Manual - Chapter 19 Managing File Layout (Striping) and Free Space]])
- **[定義] 高帯域を得るレイアウトはワークロード規模とターゲット競合の関数である**: Titan では、少数クライアントの単一 OST 書き込みは4〜16クライアントで高く、多数クライアントでは1 MB程度の小バーストが有利な場合があった。HACC IO では大きなバーストの EAB がストライプ数16または32で高くなった。(Source: [[@2020__TOS__Characterizing Output Bottlenecks of a Production Supercomputer Analysis and Implications]])
- **[定義] ストライプ割り当てにおける静的ラウンドロビンからデータ駆動型大域最適化への拡張**: Lustre の標準ストライピングではファイル作成時に OST が空き容量基準のラウンドロビン順で割り当てられるが、バースト的な複数アプリケーションが混在する環境では OST 間および OSS の CPU 負荷に激しい偏りが生じる。将来要求(要求サイズおよびストライプ数)のマルコフ予測と、OSS/LNET 負荷・OST 残余容量をコスト・容量制約とする最小費用最大流(MCMF)グラフ問題を組み合わせることで、同一ファイルストライプの単一 OST への重複配置を制約(容量 1)として防ぎつつ、ストラグラー OST(高 I/O 遅延)を動的に排除した最適なターゲット選択が可能となる。(Source: [[@2017__IEEE BigData__I O Load Balancing for Big Data HPC Applications]])
## 関連
- [[並列ファイルシステム]]
- [[オブジェクトベースストレージ]]
- ソース: [[@2026__Whamcloud__Lustre Operations Manual - Chapter 19 Managing File Layout (Striping) and Free Space]]
## 出典
- *Lustre Software Release 2.x Operations Manual*, Whamcloud, built 2026-05-26, Chapter 19. https://doc.lustre.org/lustre_manual.xhtml
- [[@2017__IEEE BigData__I O Load Balancing for Big Data HPC Applications]]