web-dev-qa-db-ja.com

MySQL Clusterを使用する利点は何ですか?

私はMySQL Clusterに手を浸したことがなく、それがどのように私に利益をもたらすことができるか知りたいです。いつ使用するのが最適で、パフォーマンス上のメリットはありますか?

15
RPK

MySQL Clusterは、次の3つの基本原則に基づいて設計されています。

  • 高可用性(シェアードナッシング、ローカルおよび地理的レプリケーション、統合されたハートビート、自動フェイルオーバー、自己修復リカバリなど)

  • 書き込みスケーラビリティとリアルタイムパフォーマンス(自動シャーディング、メモリ内最適化など)

  • 複数のデータベースインターフェイス(SQLおよびNoSQL)

これらについては、次のペーパーで詳細に説明しています(注、登録が必要です)。 http://mysql.com/why-mysql/white-papers/mysql_wp_scaling_web_databases.php

アダプティブクエリローカリゼーションは、現在のMySQL Cluster 7.2開発リリースの機能であり、データノードにプッシュダウンすることでJOIN操作のパフォーマンスを急速に向上させ、ネットワークトラフィックを大幅に削減します。詳細については、こちらをご覧ください。 http://dev.mysql.com/tech-resources/articles/mysql-cluster-labs-dev-milestone-release.html

MySQL ClusterはGPLの下でライセンスされ、フォーラム経由のオンラインヘルプを使用してdev.mysql.comからダウンロードできます:forums.mysql.com/list.php?25

5
Mat Keep

MySQL Cluster に関する情報を取得したい場合、MySQL(Sunが購入する前)は簡単なアンケートを送信しました。まだあったらいいのに。テーブルに整数キーのみがあるかどうかを尋ねる質問の1つ。

MySQL ClusterはACIDに準拠していますが、複合キーを持つデータに適したストレージエンジンを提供していません。いくつかの点で、MongoDBまたはCassandra)の使用と同様に、データレイアウトとシャーディングに関してその使用を計画する必要があります。

MySQL Clusterの最も煩わしい部分であるネットワーク通信についても考慮する必要があります。 MySQL Clusterはサーバー間でおし​​ゃべりになる傾向があります。 Gig-Eでさえ、範囲クエリや全テーブルスキャンを実行する場合、問題が発生する可能性があります。特にアプリケーションがそのようなキーで成功する場合は、主キーと一意のキーを使用するのに十分な規律が必要です。

これらの簡単な観察に固執しない限り、MySQL Clusterは良いことよりもはるかに害が大きくなります。

5
RolandoMySQLDBA