• 会員限定
  • 2013/10/31 掲載

Facebookはどうやって何千台ものMySQLを人手を使わずに管理しているのか?

MySQL Pool Scanner(MPS)

  • icon-mail
  • icon-print
  • icon-hatena
  • icon-line
  • icon-close-snsbtns
記事をお気に入りリストに登録することができます。
おそらく世界でもっとも大規模にMySQLのクラスタを展開し、運用しているのがFacebookでしょう。複数のデータセンターにまたがり何千台ものMySQLサーバを運用するために、自動化の仕組みは欠かせません。その自動化がどのような仕組みになっているのか。FacebookのデータベースエンジニアであるShlomo Priymak氏が、Under the hood: MySQL Pool Scanner (MPS)という記事をFacebookで公開しています。かなり長い記事なので、ここではそのポイントをまとめて解説してみました。詳細はぜひ原文をあたってみてください。

Publickey 新野淳一

Publickey 新野淳一

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会員にご登録ください。

すべて無料!ビジネスやITに役立つメリット満載!

  • ここでしか見られない

    1万本超のオリジナル記事が無料で閲覧可能

  • 多角的にニュース理解

    各界の専門家がコメンテーターとして活躍中!

  • スグ役立つ会員特典

    資料、デモ動画などを無料で閲覧可能!セミナーにご招待

  • レコメンド機能

    ​あなたに合わせた記事表示!メールマガジンで新着通知

関連タグ

関連コンテンツ

あなたの投稿

    PR

    PR

    PR

処理に失敗しました

人気のタグ

投稿したコメントを
削除しますか?

あなたの投稿コメント編集

機能制限のお知らせ

現在、コメントの違反報告があったため一部機能が利用できなくなっています。

そのため、この機能はご利用いただけません。
詳しくはこちらにお問い合わせください。

通報

このコメントについて、
問題の詳細をお知らせください。

ビジネス+ITルール違反についてはこちらをご覧ください。

通報

報告が完了しました

コメントを投稿することにより自身の基本情報
本メディアサイトに公開されます

必要な会員情報が不足しています。

必要な会員情報をすべてご登録いただくまでは、以下のサービスがご利用いただけません。

  • 記事閲覧数の制限なし

  • [お気に入り]ボタンでの記事取り置き

  • タグフォロー

  • おすすめコンテンツの表示

詳細情報を入力して
会員限定機能を使いこなしましょう!

詳細はこちら 詳細情報の入力へ進む
報告が完了しました

」さんのブロックを解除しますか?

ブロックを解除するとお互いにフォローすることができるようになります。

ブロック

さんはあなたをフォローしたりあなたのコメントにいいねできなくなります。また、さんからの通知は表示されなくなります。

さんをブロックしますか?

ブロック

ブロックが完了しました

ブロック解除

ブロック解除が完了しました

機能制限のお知らせ

現在、コメントの違反報告があったため一部機能が利用できなくなっています。

そのため、この機能はご利用いただけません。
詳しくはこちらにお問い合わせください。

ユーザーをフォローすることにより自身の基本情報
お相手に公開されます