数据库集群

2022-12-01 1913阅读

温馨提示:这篇文章已超过620天没有更新,请注意相关的内容是否还可用!

一.基于商优背相团实时数据同步技术

数据库集群
(图片来源网络,侵删)
数据库集群
(图片来源网络,侵删)

基于此技术稳留强病构造的数据库集群是市场上的新兴力量,它又具有两类,分别是:

a.具有独立网关

下面以DBTwin为例来说明其技术特点。

DBTwin采用了冗余频司二大袁马设计原理,对于来自客户端的请求集群存储技术,请求被分成两类:查询月无构顾图请求和数据更新请求。对于数据更新请求,集群内部各节点之间保持数据的实时同步一致;对于数据的查询请求,则可以在集群各节点之间负载均衡执行。它的特点是:

a) 负载均衡的单元是客户端的每个独沉容预益始做么兴立请求,这点除了Oracle RAC集群,是市场上独有的。

b) 实时冗余一致的多份数据,从理论上讲实现了数据的零丢失。

c) 由于可以做到数据零丢失,因此在系统发生任意故障条件下,可以做到系统的对外服务不停止。

d) 此系统使用了专用高速数据同步技术,根据测试,数据同步速度能SQL Server的镜像相等。

e) 此系统的缺点是数据同步需要花费代价,节点数量受到限制,一般2到4个节点为宜。

f) 此系统从宏观上提升了整个系统的性能。

b.将调度节点集成于数据库引擎

下面以Moebius来说明其技术特点。

任何在数据库和应用程序之间引入的中间件都同时引入了单点故障点,如果中间件(网关)出现了故障,则数据库集群就会形同虚设。因此Moebius在集群中的每个节点上都存在于嵌入于数据库引擎的分发代理,当前负责调度的分发代理出现故障时,分发代理会故障转移到集群中的其他节点,从而避免了使用网关架构所引入的单点故障点,除此之外,该类产品的特点是:

a) 负载均衡是基于每个客户端的独立请求,默认规则是将查询优先分发到集群中负载低的服务器,也可以自定义规则,将某些特定业务分发到集群中的某一台集群存储技术,比如将报表相关的查询分发给集群中的特定服务器。

b) 采用Share-Nothing架构,对数据进行冗余,从而保证了数据的安全性

c) 数据库同步机制采用日志Redo的方式,在日志同步之前对日志进行压缩,保证了同步效率

d) 在集群中任意节点出现故障时,会被自动剥离出节点,由剩余运行正常的节点继续提供服务,从而保证了最小停机时间

e) 负载均衡集群从宏观上提高了吞吐量和性能

f) 该类集群不需要特殊的存储设备,可以使用廉价的本地存储,但由于数据冗余,因此相较于Share-Disk架构而言,需要更多的存储空间

c.没有独立网关

当前市场上也存在下列一种基于数据实时同步的集群,其拓扑结构如下图所示:

此系统由于没有独立的集群网关,因此本质上简化成了数据库的实时备份系统,与实际的备份系统不同的是,它是工作在数据库应用层。此系统的特点:

a) 没有独立的集群网关,通过主节点的转发来实行查询的负载均衡。在系统压力大的情况下,集群主机会形成性能瓶颈,无论是CPU、内存还是网络带宽,也可能是OS等系统内核资源,都容易因到达临界状态而形成瓶颈。

b) 各节点数据实时一致,对于数据容错有利。

c) 对客户端没有二进制透明。

d) 负载均衡单元是数据库连接。也就是说,在客户端登陆数据库的时候,静态地指定连接到某个集群节点,此后此连接上的全部请求一律发送到该数据库上,因此在特殊情况下,可能会出现这样的场景:所有客户端的连接集中在集群主机上,这时候,集群主机不但承担了客户端的所有查询,还需要实时同步数据到所有的集群从机,即集群主机的CPU为100%,而集群别的节点CPU可能为0%,这样整个系统的性能会受到严重影响。

e) 由于使用的是分布式事务机制(MSDTC)确保数据的实时一致性,因此数据同步的性能比较慢,根据测试,会比SQL Server镜像慢好几倍。

f) 同样地,此集群的节点数量也受到限制,也是以2到4个节点为宜。

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]