分布式数据库解决方案需求

分布式数据库解决方案需求

扩展性

使用分布式,其实最主要的就是扩展性,如果空间不足了,可以很方便容易的扩展节点个数,并且将数据做新的平衡处理。这个过程要不影响业务使用,对业务透明。

支持事务

分布式数据库,对于业务本身,使用方面与单机区别不大,也就是对业务透明,因为使用MySQL是支持事务的,那么MySQL变身为分布式之后,事务特性还是不能少的,所以整体上看来,还是要支持分布式事务。

SQL语句无限制

业务需求的多样性,导致在SQL需求上面,都是比较广泛的,针对业务的透明性,如果某些SQL语句不支持,那这样导致的问题是,一方面,限制了业务程序的功能和性能,另一方面,导致业务程序与“分布式数据库”的捆绑问题。

性能足够好

使用分布式数据库,其实基本上是对性能的要求比较低的业务才会这样选择,即使是这样,还是性能越高,越多人才会选择这样的分布式数据库。

元数据变更透明性

元数据变更,在任何数据库中都是存在的,在单点情况下,改表操作我们有多种友好的方法来实现,但到了分布式环境下,可能这种操作就成为了问题,因为数据的分片导致了元数据的变更需要多点修改,进而很多问题就来了,比如原子性、数据可见性、正确性等等,所以这是最基本的问题。

底层数据库的高可用性

话说经济基础决定上层建筑,在分布式数据库中也是一样的,如果底层数据库的不稳定,或者数据复制延迟,亦或出现数据不一致的问题,则上层应用的访问正确性就没法保证,所以底层数据库最基本的就是保证数据一致性(高可用)。

原文地址:https://www.cnblogs.com/hnxxcxg/p/10290475.html