数据库集群

上传人:hs****ma 文档编号:507003217 上传时间:2023-10-25 格式:DOCX 页数:9 大小:151.32KB
返回 下载 相关 举报
数据库集群_第1页
第1页 / 共9页
数据库集群_第2页
第2页 / 共9页
数据库集群_第3页
第3页 / 共9页
数据库集群_第4页
第4页 / 共9页
数据库集群_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《数据库集群》由会员分享,可在线阅读,更多相关《数据库集群(9页珍藏版)》请在金锄头文库上搜索。

1、数据库集群技术有哪些?集群软件的分类:一般来讲,集群软件根据侧重的方向和试图解决的问题,分为三大类:高性能集群(High performance cluster,HPC)、负载均衡集群(Load balance cluster, LBC),高可用性集群(High availability cluster, HAC)。按照集群工作的层面,可分为:数据库服务器集群,应用服务器集群,交换机集群等 按照集群的架构,可分为:共享磁盘型,非共享磁盘型。按照集群粒度不同:基于10;基于操作系统;基于数据库实例的;基于每个数据库的等。什么是高性能集群高性能集群(High performance cluster

2、,HPC),它是利用一个集群中的多台机器共同完成同一件任务,使得 完成任务的速度和可靠性都远远高于单机运行的效果。弥补了单机性能上的不足。该集群在天气预报、环 境监控等数据量大,计算复杂的环境中应用比较多;什么是负载均衡集群负载均衡集群(Load balance cluster, LBC),它是利用一个集群中的多台单机,完成许多并行的小的工作。 一般情况下,如果一个应用使用的人多了,那么用户请求的响应时间就会增大,机器的性能也会受到影响, 如果使用负载均衡集群,那么集群中任意一台机器都能响应用户的请求,这样集群就会在用户发出服务请 求之后,选择当时负载最小,能够提供最好的服务的这台机器来接受请

3、求并相应,这样就可用用集群来增 加系统的可用性和稳定性。这类集群在网站中使用较多;什么是高可用性集群高可用性集群(High availability cluster, HAC),它是利用集群中系统的冗余,当系统中某台机器发生损坏 的时候,其他后备的机器可以迅速的接替它来启动服务,等待故障机的维修和返回。最大限度的保证集群 中服务的可用性。这类系统一般在银行,电信服务这类对系统可靠性有高的要求的领域有着广泛的应用。 数据库集群的现状数据库集群是将计算机集群技术引入到数据库中来实现的,有数据库厂商自己开发的;也有第三方的集群 公司开发的;还有数据库厂商与第三方集群公司合作开发的,各类集群实现的功能

4、及架构也不尽相同Oracles Real Application Cluster (RAC)Microsoft SQL Cluster Server (MSCS)IBMs DB2 UDB High Availability Cluster(UDB)Sybase ASE High Availability Cluster (ASE)MySQL High Availability Cluster (MySQL CS)基于IO的第三方HA(高可用性)集群RAC(Real Application Cluster,真正应用集群)是Oracle9i数据库中采用的一项新技术,也是Oracle数据库 支持网格

5、计算环境的核心技术。它的出现解决了传统数据库应用中面临的一个重要问题:高性能、高可伸 缩性与低价格之间的矛盾。在很长一段时间里,甲骨文都以其实时应用集群技术(Real Application Cluster, RAC)统治着集群数据库市场。其余供应商似乎主要将重点放在了可用性上。例如,xkoto公司(该公司为DB2提供集群技术)最初的计划本 来是着眼于DB2的性能,不过他们现在的立场已经发生了变化,他们现在认为“性能固然重要,但真正需要 解决的问题是持续可用性”。您为什么需要集群伴随着企业的成长,在业务量提高的同时,系统的访问量和数据流量的快速增长,其处理能力和计算强度 也相应增大,使得单一设

6、备根本无法承担。在此情况下,如果扔掉现有设备去做大量的硬件升级,这样将 造成现有资源的浪费,而且如果再面临下一次业务量的提升,这又将导致再一次硬件升级的高额成本投入, 甚至性能再卓越的设备也不能满足当前业务量的需求。于是,人们希望通过几个中小型服务器组建集群, 实现数据库的负载均衡,在需要更高数据库处理速度,我们只要简单地增加数据库服务器就可以得到扩展。数据库作为应用系统的核心,在企业的 IT 系统中起着非常重要的作用,单一设备根本无法保证系统的持续 运行,发生系统故障,严重影响系统的正常运行,甚至带来巨大的经济损失。于是人们希望通过组建数据 库集群,来保证系统的可用性,一旦某节点发生故障,系

7、统会自动故障转移,实现系统的持续工作。企业的数据是企业的一些重要信息,一些核心数据甚至关系着企业的命脉,单一设备根本无法保证数据的 安全性,一旦发生丢失,很难再找回来,于是人们希望通过组建数据库集群,实现数据集群的冗余,通过 多份数据来保证安全性。问:SQL Server自身提供的集群有哪些,和Moebius集群有什么区别?答:SQL Server自身提供的集群技术有两种:失败转移集群(MSCS)和镜像(Mirror)失败转移集群(MSCS),这是一种基于共享磁盘架构的高可用集群,是操作系统级别的集群; 镜像(Mirror),是一种共享磁盘架构的高可用集群,是数据库级别的集群。它们共同的特点就

8、可以保证系统的可用性,但是对性能没有丝毫的提升,甚至较单机还有下降,事实上SQL Server 数据库只运行在一个节点上,当出现故障时,另一个节点只是作为这个节点的备份;因为始终只有 一个节点在运行,在性能上也得不到提升,系统也就不具备扩展的能力。当现有的机器不能满足应用的负载 时只能更换更高配置的机器,而且是一次性更换两台。Moebius 集群研究的范畴在 SQL Server 数据库平台上开发的,用于实现数据库的负载均衡,同时提高数据库可用性,保证数据安全 性的综合集群方案。 Moebius 集群基于每个数据库实现,粒度更小,应用起来更加灵活方便;结构上采用 无共享磁盘架构,横向扩展,具有

9、良好的伸缩性;设计上,采用与SQL Server高度集成的方式,将Moebius 中间间宿主于SQL Server的引擎中,将Moebius集群的配置管理器集成到SQL Server Management Studio管 理工具中,不论是管理还是开发上,最大程度地顺应了用户的使用习惯。Moebius 集群常见问题?1. 问:使用Moebius集群软件搭建集群是不是还要搭建MSCS (微软失败转移集群)或第 三方HA (高可用)集群?答:不需要,Moebius集群是一个单独的集群软件,是基于SQL Server数据库平台开 发的,在应用时不依赖于其它的集群软件。2. 问:Moebius集群支持无

10、共享磁盘架构,若我现在已经搭建MSCS,使用了共享磁盘, 怎么办?答: Moebius 集群也支持在共享磁盘架构上搭建集群,只是有两份相同的数据存放在 同一个存储中。3. 问:我一台服务器上有多个SQL Server数据库,会不会影响我使用Moebius集群?答:不会影响, Moebius 集群是基于数据库级别的集群,可以将多个数据库搭建成多 组集群。4. 问: Moebius 集群中的机器是不是一定要求一致,一个 4CPU 机器能不能和一个 2CPU 机器搭建集群?答:可以,使用 Moebius 集群时,可以根据节点性能的不同,配置不同的权重, 4CPU 机器多分配些压力, 2CPU 机器少

11、分配一些压力。5. 问:我的应用程序很复杂,数据库的表结构也很复杂,是不是使用 Moebius 集群需要 要我们更改应用程序,更该数据库结构?答:在Moebius集群中,我们将客户的应用体验放在了很高的位置,客户不必担心由 于使用Moebius集群而更改原有程序,Moebius集群是和SQLServer数据库高度集成的,Moebius配置管理器集成到SQLServer的Management Studio管理工具中,Moebius中 间件宿主在SQLServer的数据库引擎中,整个集群对外只暴露一个IP地址,您不但不需 要更改程序而且不用改变使用习惯,透明性非常好。6. 问: Moebius 集

12、群中提供几种连接数据库的方法,负载均衡如何来实现?答:共提供了三种方式,1、通过格瑞趋势专门为数据库集群定制的负载均衡软件Loadbalancing Director来连接 数据库。2、通过负载均衡硬件来连接数据库,如F5等。3、通过其它的负载均衡软件来连 接数据库。7. 问:使用LB Director负载均衡软件连接数据库集群是不是消耗很大?答:不是,LoadBalancing Director是一个Windows服务,根据后端数据库服务器的压 力的不同,合理的进行分发。8. 问:使用LB Director负载均衡软件具体如何连接数据库?答:LB Director负载均衡软件可以部署在一台单

13、独的服务器上,也可以部署在应用程 序所在的服务器上。9. 问:使用 Moebius 集群,管理工具是不是要增加额外的机器?有多少个节点,是不是 就要安装多少次?答:不需要,首先,Moebius集群的配置管理器集成到SQLServer的Management Studio 管理工具中,不需要您增加额外的机器;在您安装Moebius for SQL Server时,您实际上安 装的是Moebius集群的配置管理器,通过配置管理器来部署集群,在部署的过程中,Moebius 中间件会自动创建到其它服务器的数据库节点上去。10问:由于业务逻辑复杂,某SQL语句在单机上执行时间为5分钟,搭建Moebius集

14、 群后,若是两个节点,那么是不是要执行10分钟?答:不是,Moebius集群中,首先在集群中的一个节点上执行,花费的时间也是5分钟, 中间件监测到数据有变化,将变化的数据同步到其它节点,不需要在另一节点上重新执行。11. 问:在同步数据的过程中,若同步到一个节点花费的时间是10毫秒,那么同步到2个节点花费的时间是不是20毫秒? 3个节点是不是30毫秒?答:不是,在同步数据的过程是以一个并发的形式进行的,所以这个时间和同步到一个 节点花费的时间应该是基本相同。12. 问:数据同步的具体消耗是多少?答:消耗是和实际的应用场景以及硬件环境有关系的,假设在环境相同的情况下,以某 次测试的真实数据来说,

15、单机执行3毫秒;在集群环境下执行3.5毫秒。13. 问:Moebius在同步数据的过程中是如何保证数据一致性的?答:Moebius中间件宿主在SQL Server里面,监测数据的变化,当有数剧变化时,中间 件才工作,同步工作是在一个分布式事务中完成的,由MSDTC保证,所以数据是一致的。14问:使用MSDTC来保证事务的一致性是不是会增加额外的消耗,消耗会不会很大?答:不是,首先分布式事务是有消耗,要比本地事务消耗大一点儿。15. 问:Moebius集群和SQL Server的镜像有什么区别?答: 相同:都采用了基于事务日志的复制技术a)不同:镜像中只有一个服务器可读写,镜像服务器处于reco

16、veing状态,是不能提 供读写服务的(可以通过快照做报表等,详细参考MS镜像相关介绍;在Moebius 集群中,两个节点是处于同等地位的,都是可读写的,可以有效均衡访问压力的。b)在复制日志的过程中镜像是严格按照日志的顺序逐条传送的,在Moebius集群中, 采用了传输压缩以及智能同步策略,以最小的消耗完成数据的同步(详细参考 Moebius帮助文档中中间件的同步策略及传输压缩部分)16. 问:我不知道 Moebius 集群是否适合我当前的应用,到底对我的数据库能提升多大性 能,若想得出一个直观的测试结果,我该怎么做?答: 确实,在不同的应用场景、不同的硬件环境,所表现出来的性能提升是有差别的, 建议您将自己的真实业务的还原到测试环境中,通过实际的测试数据来得出结论。格瑞趋势 提供了专门的测试工具,您也可

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号