- 会員限定
- 2013/10/31 掲載
Facebookはどうやって何千台ものMySQLを人手を使わずに管理しているのか?
MySQL Pool Scanner(MPS)
ITジャーナリスト/Publickeyブロガー。大学でUNIXを学び、株式会社アスキーに入社。データベースのテクニカルサポート、月刊アスキーNT編集部 副編集長などを経て1998年退社、フリーランスライターに。2000年、株式会社アットマーク・アイティ設立に参画、オンラインメディア部門の役員として2007年にIPOを実現、2008年に退社。再びフリーランスとして独立し、2009年にブログメディアPublickeyを開始。現在に至る。
MPSのおもな3つの機能
Facebookで稼働しているMySQLは、つねに1つのマスターとそこからレプリケーションされた複数のスレーブによるレプリカセットを構成しています。このレプリカセットの構造を維持し続けることで、可用性と高速なアクセスを実現しているわけです。そして大量のレプリカセットがFacebookのデータセンター内で稼働しています。これを維持するためのMPSの仕組みは、大きく3つの部分に分かれています。1つは、スレーブが落ちたときの仕組み。もう1つはマスターが落ちたときの仕組み。そしてMPS自身が自律的に動くための仕組みです。
スレーブが落ちたとき
スレーブが落ちたとき、あるいはディスクスペースの不足などのときには、別の物理サーバにスペアとなるインスタンスを作り、そこにスレーブのコピーを行い、コピー完了後にそちらを新スレーブとして扱います。下記の図では、説明を単純にするため各物理サーバには2つのインスタンスが稼働していることになっています。Spare(スペア)とは、予備用に空いているインスタンスのことです。
マスターが落ちたとき
今すぐビジネス+IT会員にご登録ください。
すべて無料!ビジネスやITに役立つメリット満載!
-
ここでしか見られない
1万本超のオリジナル記事が無料で閲覧可能
-
多角的にニュース理解
各界の専門家がコメンテーターとして活躍中!
-
スグ役立つ会員特典
資料、デモ動画などを無料で閲覧可能!セミナーにご招待
-
レコメンド機能
あなたに合わせた記事表示!メールマガジンで新着通知
関連タグ
PR
PR
PR