请简述主流的分布式可扩展分布式数据库集群 ?

主流的分布式可扩展分布式数据库集群包括以下几种:

  1. MySQL Cluster:采用Shared-nothing架构,由管理节点(ndb_mgmd),处理节点(mysqld)和存储节点(ndbd)组成。它主要利用NDB存储引擎来实现,数据被自动分布在集群中的不同存储节点上,每个存储节点只保存完整数据的一个分片。MySQL Cluster主要利用了NDB存储引擎来实现,NDB存储引擎是一个内存式存储引擎,要求数据必须全部加载到内存之中。 数据被自动分布在集群中的不同存 储节点上,每个存储节点只保存完整数据的一个分片(fragment)。 同时,用户可以设置同一份数据保存在多个不同的存储节点上,以保证单点故障不会造成数据丢失。 MySQL cluster的优点在于其是一个分布式的数据库集群,处理节点和存储节点都可以线性增加,整个集群没有单点故障,可用性和扩展性都可以做到很高,更适合OLTP应用。
  2. Oracle RAC:是业界最流行的产品,其架构的最大特点是共享存储架构(Shared-disk),整个RAC集群是建立在一个共享的存储设备之上的,节点之间采用高速网络互连。在Oracle RAC环境中,每个Oracle数据块都被赋予一个(且只有一个)“主”Oracle RAC节点。该Oracle RAC节点的全局缓存服务(GCS)负责管理对这些数据块集的访问。当其中一个Oracle节点需要访问某个Oracle数据块时,它必须首先与该数据块协商。然后,该主节点的GCS或者指示请求的Oracle节点从磁盘中获取该数据块,或者指示该Oracle数据块的当前持有者将被请求的数据块发送到请求节点。

这些集群都具备高可用性、可扩展性和容错性等优点,可以满足不同场景下的需求。

发表评论

后才能评论