使用 MySQL Cluster 有什么好处?

RPK*_*RPK 15 mysql ndbcluster

我从未涉足 MySQL 集群,想知道它如何使我受益。什么时候使用它最好,它是否有性能优势?

Rol*_*DBA 5

当我想获得有关MySQL Cluster 的信息时,MySQL(在 Sun 购买之前)会发出一份简短的问卷,我希望我还有。问题之一是询问您的表是否只有整数键。

虽然 MySQL Cluster 是 ACID-complaint,但它没有为具有复合键的数据提供合适的存储引擎。在某些方面,您必须在数据布局和分片方面像 MongoDB 或 Cassandra 一样计划其使用。

您还必须考虑 MySQL Cluster 中最烦人的部分:网络通信。NDB Cluster 往往在服务器之间喋喋不休。如果进行范围查询或全表扫描,甚至 Gig-E 也可能会屈服。您必须有足够的纪律才能使用主键和唯一键,尤其是当您的应用程序在此类键上蓬勃发展时。

除非您坚持这些简单的观察,否则 MySQL Cluster 弊大于利。


小智 5

MySQL Cluster 围绕 3 个核心原则设计:

  • 高可用性(无共享、本地和地理复制、集成心跳、自动故障转移和自愈恢复等)

  • 写入可扩展性和实时性能(自动分片、内存优化等)

  • 多个数据库接口(SQL 和 NoSQL)

这些在以下论文中更详细地讨论(注意,需要注册):http : //mysql.com/why-mysql/white-papers/mysql_wp_scaling_web_databases.php

自适应查询本地化是当前 MySQL Cluster 7.2 开发版本的一个特性,它通过将 JOIN 操作下推到数据节点来快速提高 JOIN 操作的性能,从而显着减少网络流量 - 解决 Rolando 上面提出的问题。您可以在此处阅读更多相关信息: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