# 分散ストレージ ## 定義 分散ストレージ(distributed storage)とは、複数のコモディティサーバにまたがってデータを格納・管理するシステムの総称である。単一マシンの容量・帯域・可用性の限界を超え、ペタバイト規模のデータを水平スケーリングで取り扱う。データモデル(リレーショナル、キー値、多次元マップなど)、整合性保証、分散・レプリケーション戦略、障害耐性の設計がシステムごとに大きく異なる。(Source: [[@2006__OSDI__Bigtable - A Distributed Storage System for Structured Data]]) ## 横断的知見 - (1 ソース目のため、他ソースとの突き合わせによる知見は今後蓄積する) ## 未解決の問い - Bigtable のタブレットベース動的分割と、他の分散ストレージシステム(Dynamo のコンシステントハッシュなど)のパーティショニング手法はどのような条件下で優劣が分かれるか - Bigtable が採用した Chubby への集中依存と、完全非集中のメンバーシップ管理(ゴシッププロトコルなど)は可用性・運用複雑性のトレードオフでどう評価されるか - リレーショナルモデルを捨てた Bigtable の設計判断は、後続の NoSQL システムや NewSQL システムの登場にどのような影響を与えたか - 単一行トランザクションのみの制約は、セカンダリインデックスやクロステーブル整合性が必要なアプリケーションでどう回避されたか ## 関連 - ソース: [[@2006__OSDI__Bigtable - A Distributed Storage System for Structured Data]] - エンティティ: [[Bigtable]] / [[Google File System]] / [[Chubby]] / [[Google]] / [[Jeffrey Dean]] / [[Sanjay Ghemawat]] - 関連 MOC: [[Systems for ML - MOC]] ## 出典 - [[@2006__OSDI__Bigtable - A Distributed Storage System for Structured Data]]