MySQL Clusterはもともとエリクソン社の傘下にあったAlzato社がクラスタリング製品技術を使ったNDB Clusteを開発しました。その後、MySQL社が買収し、NDB ClusterをMySQLが取り込みました。MySQLとndbclusterストレージエンジンを統合したのがMySQL Clusterになります。
MySQL Clusterは共有ディスク、共有ストレージを使用しないアクティブ・アクティブ型データベースクラスタです。MySQL Clusteは多重化されていて、単一障害点がなく、ノードに障害が発生した場合は切り離すだけで継続できます。このように高い可用性を持ったデータベースです。
MySQL Clusterは可能性が高いばかりでなく、スケールアウト、スタートアップも容易であり、急激に利用者が増えた場合でも柔軟に対応できる点は大変メリットが高いです。例えばスタートアップ後に急激に拡大するようなオンラインゲームなどでは、スケールに合わせて変更できる点で威力を発揮するでしょう。
クラスタの構成 280
MySQL Clusterには役割の異なるノードが複数存在します。複数のSQLノード、複数のデータノードがそれぞれのノードグループを構成し、それがそれぞれに接続されています。
MySQL Clusterはレプリケーションと似ているように見えますが、レプリケーションと違い、複数のマシンを一体として動かしています。障害にも強く、読み込み・書き込み処理について高い拡張性があります。また、フェイルオーバー時間の短さ、メンテナンスのオンライン化など、高可用性も実現しています。なにより災害にも強い冗長性は今後の国内のサーバ運用の面で見逃せないものです。大きなデータベースを運用している企業は、クラスタでの運用を検討してはいかがでしょうか。