# PolyStore
PolyStoreは、[[@2026__ACM TOS__Horizontally Scaling Heterogeneous Storage for Combined Capabilities with PolyStore]]で提案された、PM(persistent memory)・NVMe SSD・SATA SSDなど帯域・レイテンシ特性の異なる複数のストレージデバイス(Heterogeneous Storage Devices, HSD)を非階層(水平)に統合するメタ層である。デバイス固有の成熟したファイルシステム([[NOVA]]、[[f2fs]]、ext4等)を置き換えず、その上でPOSIX I/Oをインターセプトするユーザー空間ランタイムと、VFS層の薄いカーネルコンポーネント(PolyOS)から成るクロスレイヤ設計を採る。
5つの主要コンポーネントを持つ:
- **Poly-index**: レンジベースの木構造で論理ブロックの物理デバイス上の位置を管理する、きめ細かいデータインデキシング機構。
- **Poly-placement**: I/Oスレッドを動的に異なるデバイスへマッピングし、単一デバイスの帯域飽和を避けつつ累積帯域を最大化する。
- **Poly-cache**: ユーザー空間のheterogeneity-aware DRAMキャッシュ。デバイス固有のキャッシュ許容・追い出しポリシーを持つ。
- **Poly-persist**: 異なるアトミック性・耐久性保証を持つHSDにまたがる協調的永続化・クラッシュ整合性機構。
- **PolyOS**: VFS層の薄いOSコンポーネントで、複数プロセス間のファイル共有・セキュリティを担う。
評価では、マイクロベンチマークで既存のキャッシング(Orthus)・ティアリング(Strata、SPFS)手法に対し1.11x〜9.38x、実アプリケーション([[RocksDB]]、Redis、GraphWalker)で1.52x〜2.02xの性能向上を達成した。コードは[github.com/RutgersCSSystems/PolyStore](https://github.com/RutgersCSSystems/PolyStore)で公開されている。(Source: [[@2026__ACM TOS__Horizontally Scaling Heterogeneous Storage for Combined Capabilities with PolyStore]])
## 関連
- ソース: [[@2026__ACM TOS__Horizontally Scaling Heterogeneous Storage for Combined Capabilities with PolyStore]]
- 概念: [[ヘテロジニアスストレージの水平スケーリング]]
- エンティティ: [[NOVA]] / [[f2fs]] / [[RocksDB]] / [[Rutgers University]] / [[EPFL]] / [[Sudarsun Kannan]] / [[Sanidhya Kashyap]]