2009-06-16 Big Table: A Distributed Structured Storage Systemを見たメモ メモ GAE Big Table: A Distributed Structured Storage System <Googleの典型的なクラスターノード構成> クラスターノード構成 クラスターノード Intelベースの安いPC Linux OS Scheduler slave GFS chunk server Cluster scheduling master Lock service (Chubby) GFS master これらのノードの上に、スケジューラが各種サービスを載せていく 各種タスク(アプリ?) Bigtable Server(tablet server) Bigtable Master tablet 1つのtabletは100〜200MB程度のデータを保有 1台のtablet serverで100以下のtabletを保有 復旧が高速:1台がダウンしても、その100個のtabletは他の100台のサーバーが保有している Masterが負荷分散を管理し、高負荷のサーバーからtabletを移動 tabletサーバーのGFS書き込み 1つはローカルのchunk serverが空いていればそこに書く 残り2つは離れた場所(少なくても同じラックではない場所)のchunk serverに書く tabletが移動しない限り、tablet serverはローカルのchunk serverにアクセスする 負荷分散のためtabletが移動すると、データは残したままtabletのみ移動する バイナリアップグレード時などに、できるだけローカルに置くようにデータを再配置する