
分片
|
157
必须自己开发一个解决方案。(但是,下一节将介绍的一些
MySQL
的替代选项有解决方
案。)这是分片时复杂程度最低的挑战,但仍然是一个挑战。不能因为模式修改很平常就
忽视这个挑战。
5.4
替代选项
分片很复杂,并且对于用户或客户没有直接价值。它对于应用程序有价值,可以让应用
程序保持伸缩,但对于工程师来说,它是需要付出很大努力的工作。因此,其他解决
方案变得越来越流行和健壮就不奇怪了。但是,不要急于将你的数据交给另一项技术管
理。
MySQL
是一项非常成熟的技术,其可靠性非常高,并且已经被很深入地理解,所
以它是一个安全且合理的选择。
5.4.1 NewSQL
NewSQL
指的是一种关系型的、遵守
ACID
的数据存储,它内置了对横向扩展的支持。
换句话说,它是一个你不需要进行分片的
SQL
数据库。如果你在想,“太好了!既然如
此,为什么还使用
MySQL
呢?”接下来的
5
点将解释为什么
MySQL
—
无论是否进行
分片
—
仍然是世界上最流行的开源数据库:
成熟性
SQL
诞生于
20
世纪
70
年代,
MySQL
诞生于
20
世纪
90
年代。数据库的成熟性意
味着两点:你可以相信数据存储不会丢失或者损坏你的数据,并且对于数据存储的
每个方面,都已经存在深入的知识。要特别关注
NewSQL
数据存储的成熟性:第一
个真正稳定的
GA
(
Generally Available
,公共可用)版本在什么时候发布?从那之
后,发布的频率和质量如何?有哪些深入且权威的知识被公开?
SQL
兼容性
NewSQL
数据存储使用
SQL
(毕竟它的名字中就包含
SQL
)