おそらく世界でもっとも大規模にMySQLのクラスタを展開し、運用しているのがFacebookでしょう。複数のデータセンターにまたがり何千台ものMySQLサーバを運用するために、自動化の仕組みは欠かせません。 その自動化がどのような仕組みになっているのか。FacebookのデータベースエンジニアであるShlomo Priymak氏が、Under the hood: MySQL Pool Scanner (MPS)という記事をFacebookで公開しています。 かなり長い記事なので、ここではそのポイントをまとめて解説してみました。詳細はぜひ原文をあたってみてください。 MPSのおもな3つの機能 Facebookで稼働しているMySQLは、つねに1つのマスターとそこからレプリケーションされた複数のスレーブによるレプリカセットを構成しています。このレプリカセットの構造を維持し続けることで、可用性と
![Facebookが何千台ものMySQLを人手を使わず自律管理する仕組み「MySQL Pool Scanner(MPS)」](https://cdn-ak-scissors.b.st-hatena.com/image/square/f17630620e81f89ad35a3a123d5d2f80a399b53f/height=288;version=1;width=512/http%3A%2F%2Fwww.publickey1.jp%2Fblog%2F13%2Ffbmps01.jpg)