常见数据库集群技术.docx

上传人:b****6 文档编号:4365848 上传时间:2022-11-30 格式:DOCX 页数:9 大小:63.05KB
下载 相关 举报
常见数据库集群技术.docx_第1页
第1页 / 共9页
常见数据库集群技术.docx_第2页
第2页 / 共9页
常见数据库集群技术.docx_第3页
第3页 / 共9页
常见数据库集群技术.docx_第4页
第4页 / 共9页
常见数据库集群技术.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

常见数据库集群技术.docx

《常见数据库集群技术.docx》由会员分享,可在线阅读,更多相关《常见数据库集群技术.docx(9页珍藏版)》请在冰豆网上搜索。

常见数据库集群技术.docx

常见数据库集群技术

常见数据库集群技术

数据库集群技术有哪些

集群软件的分类:

一般来讲,集群软件根据侧重的方向和试图解决的问题,分为三大类:

高性能集群(Highperformancecluster,HPC)、负载均衡集群(Loadbalancecluster,LBC),高可用性集群(Highavailabilitycluster,HAC)。

按照集群工作的层面,可分为:

数据库服务器集群,应用服务器集群,交换机集群等按照集群的架构,可分为:

共享磁盘型,非共享磁盘型。

按照集群粒度不同:

基于IO;基于操作系统;基于数据库实例的;基于每个数据库的等。

什么是高性能集群

高性能集群(Highperformancecluster,HPC),它是利用一个集群中的多台机器共同完成同一件任务,使得完成任务的速度和可靠性都远远高于单机运行的效果。

弥补了单机性能上的不足。

该集群在天气预报、环境监控等数据量大,计算复杂的环境中应用比较多;

什么是负载均衡集群

负载均衡集群(Loadbalancecluster,LBC),它是利用一个集群中的多台单机,完成许多并行的小的工作。

一般情况下,如果一个应用使用的人多了,那么用户请求的响应时间就会增大,机器的性能也会受到影响,如果使用负载均衡集群,那么集群中任意一台机器都能响应用户的请求,这样集群就会在用户发出服务请求之后,选择当时负载最小,能够提供最好的服务的这台机器来接受请求并相应,这样就可用用集群来增加系统的可用性和稳定性。

这类集群在网站中使用较多;

什么是高可用性集群

高可用性集群(Highavailabilitycluster,HAC),它是利用集群中系统的冗余,当系统中某台机器发生损坏的时候,其他后备的机器可以迅速的接替它来启动服务,等待故障机的维修和返回。

最大限度的保证集群中服务的可用性。

这类系统一般在银行,电信服务这类对系统可靠性有高的要求的领域有着广泛的应用。

数据库集群的现状

数据库集群是将计算机集群技术引入到数据库中来实现的,有数据库厂商自己开发的;也有第三方的集群公司开发的;还有数据库厂商与第三方集群公司合作开发的,各类集群实现的功能及架构也不尽相同Oracle’sRealApplicationCluster(RAC)

MicrosoftSQLClusterServer(MSCS)

IBM’sDB2UDBHighAvailabilityCluster(UDB)

SybaseASEHighAvailabilityCluster(ASE)

MySQLHighAvailabilityCluster(MySQLCS)基于IO的第三方HA(高可用性)集群

RAC(RealApplicationCluster,真正应用集群)是Oracle9i数据库中采用的一项新技术,也是Oracle数据库accurategraspfivebigdevelopmentconceptofrichconnotation,advocateinnovation,andfocusedoncoordination,andadvocategreen,andthickplantopen,andadvanceshared,putfivebigdevelopmentconceptimplementationto"xxxxxxxx"constructionofspecificpracticeinthe,effectiveimproveledeconomicdevelopmentnewnormalofcapacityandlevel.Second,wemuststrivetoimprovecapacitytoimplementpolicies

支持网格计算环境的核心技术。

它的出现解决了传统数据库应用中面临的一个重要问题:

高性能、高可伸缩性与低价格之间的矛盾。

在很长一段时间里,甲骨文都以其实时应用集群技术(RealApplicationCluster,RAC)统治着集群数据库市场。

其余供应商似乎主要将重点放在了可用性上。

例如,xkoto公司(该公司为DB2提供集群技术)最初的计划本来是着眼于DB2的性能,不过他们现在的立场已经发生了变化,他们现在认为“性能固然重要,但真正需要解决的问题是持续可用性”。

您为什么需要集群

伴随着企业的成长,在业务量提高的同时,系统的访问量和数据流量的快速增长,其处理能力和计算强度也相应增大,使得单一设备根本无法承担。

在此情况下,如果扔掉现有设备去做大量的硬件升级,这样将造成现有资源的浪费,而且如果再面临下一次业务量的提升,这又将导致再一次硬件升级的高额成本投入,甚至性能再卓越的设备也不能满足当前业务量的需求。

于是,人们希望通过几个中小型服务器组建集群,实现数据库的负载均衡,在需要更高数据库处理速度,我们只要简单地增加数据库服务器就可以得到扩展。

数据库作为应用系统的核心,在企业的IT系统中起着非常重要的作用,单一设备根本无法保证系统的持续运行,发生系统故障,严重影响系统的正常运行,甚至带来巨大的经济损失。

于是人们希望通过组建数据库集群,来保证系统的可用性,一旦某节点发生故障,系统会自动故障转移,实现系统的持续工作。

企业的数据是企业的一些重要信息,一些核心数据甚至关系着企业的命脉,单一设备根本无法保证数据的安全性,一旦发生丢失,很难再找回来,于是人们希望通过组建数据库集群,实现数据集群的冗余,通过多份数据来保证安全性。

问:

SQLServer自身提供的集群有哪些,和Moebius集群有什么区别,答:

SQLServer自身提供的集群技术有两种:

失败转移集群(MSCS)和镜像(Mirror)失败转移集群(MSCS),这是一种基于共享磁盘架构的高可用集群,是操作系统级别的集群;镜像(Mirror),是一种共享磁盘架构的高可用集群,是数据库级别的集群。

它们共同的特点就可以保证系统的可用性,但是对性能没有丝毫的提升,甚至较单机还有下降,事实上SQLServer数据库只运行在一个节点上,当出现故障时,另一个节点只是作为这个节点的备份;因为始终只有一个节点在运行,在性能上也得不到提升,系统也就不具备扩展的能力。

当现有的机器不能满足应用的负载时只能更换更高配置的机器,而且是一次性更换两台。

Moebius集群研究的范畴

在SQLServer数据库平台上开发的,用于实现数据库的负载均衡,同时提高数据库可用性,保证数据安全性的综合集群方案。

Moebius集群基于每个数据库实现,粒度更小,应用起来更加灵活方便;结构上采用无共享磁盘架构,横向扩展,具有良好的伸缩性;设计上,采用与SQLServer高度集成的方式,将Moebius中间间宿主于SQLServer的引擎中,将Moebius集群的配置管理器集成到SQLServerManagementStudio管理工具中,不论是管理还是开发上,最大程度地顺应了用户的使用习惯。

accurategraspfivebigdevelopmentconceptofrichconnotation,advocateinnovation,andfocusedoncoordination,andadvocategreen,andthickplantopen,andadvanceshared,putfivebigdevelopmentconceptimplementationto"xxxxxxxx"constructionofspecificpracticeinthe,effectiveimproveledeconomicdevelopmentnewnormalofcapacityandlevel.Second,wemuststrivetoimprovecapacitytoimplementpolicies

Moebius集群常见问题,

1.问:

使用Moebius集群软件搭建集群是不是还要搭建MSCS(微软失败转移集群)或第

三方HA(高可用)集群,

答:

不需要,Moebius集群是一个单独的集群软件,是基于SQLServer数据库平台开发的,在应用时不依赖于其它的集群软件。

2.问:

Moebius集群支持无共享磁盘架构,若我现在已经搭建MSCS,使用了共享磁盘,

怎么办,

答:

Moebius集群也支持在共享磁盘架构上搭建集群,只是有两份相同的数据存放在同一个存储中。

3.问:

我一台服务器上有多个SQLServer数据库,会不会影响我使用Moebius集群,

答:

不会影响,Moebius集群是基于数据库级别的集群,可以将多个数据库搭建成多组集群。

4.问:

Moebius集群中的机器是不是一定要求一致,一个4CPU机器能不能和一个2CPU

机器搭建集群,

答:

可以,使用Moebius集群时,可以根据节点性能的不同,配置不同的权重,4CPU机器多分配些压力,2CPU机器少分配一些压力。

5.问:

我的应用程序很复杂,数据库的表结构也很复杂,是不是使用Moebius集群需要

要我们更改应用程序,更该数据库结构,

答:

在Moebius集群中,我们将客户的应用体验放在了很高的位置,客户不必担心由

于使用Moebius集群而更改原有程序,Moebius集群是和SQLServer数据库高度集成的,

Moebius配置管理器集成到SQLServer的ManagementStudio管理工具中,Moebius中

间件宿主在SQLServer的数据库引擎中,整个集群对外只暴露一个IP地址,您不但不需

要更改程序而且不用改变使用习惯,透明性非常好。

6.问:

Moebius集群中提供几种连接数据库的方法,负载均衡如何来实现,

答:

共提供了三种方式,

accurategraspfivebigdevelopmentconceptofrichconnotation,advocateinnovation,andfocusedoncoordination,andadvocategreen,andthickplantopen,andadvanceshared,putfivebigdevelopmentconceptimplementationto"xxxxxxxx"constructionofspecificpracticeinthe,effectiveimproveledeconomicdevelopmentnewnormalofcapacityandlevel.Second,wemuststrivetoimprovecapacitytoimplementpolicies

1、通过格瑞趋势专门为数据库集群定制的负载均衡软件LoadbalancingDirector来连接数据库。

2、通过负载均衡硬件来连接数据库,如F5等。

3、通过其它的负载均衡软件来连接数据库。

7.问:

使用LBDirector负载均衡软件连接数据库集群是不是消耗很大,

答:

不是,LoadBalancingDirector是一个Windows服务,根据后端数据库服务器的压力的不同,合理的进行分发。

8.问:

使用LBDirector负载均衡软件具体如何连接数据库,

答:

LBDirector负载均衡软件可以部署在一台单独的服务器上,也可以部署在应用程序所在的服务器上。

9.问:

使用Moebius集群,管理工具是不是要增加额外的机器,有多少个节点,是不是

就要安装多少次,

答:

不需要,首先,Moebius集群的配置管理器集成到SQLServer的ManagementStudio

管理工具中,不需要您增加额外的机器;在您安装MoebiusforSQLServer时,您实际上安装的是Moebius集群的配置管理器,通过配置管理器来部署集群,在部署的过程中,Moebius中间件会自动创建到其它服务器的数据库节点上去。

10.问:

由于业务逻辑复杂,某,,,语句在单机上执行时间为,分钟,搭建Moebius集

群后,若是两个节点,那么是不是要执行10分钟,

答:

不是,Moebius集群中,首先在集群中的一个节点上执行,花费的时间也是5分钟,中间件监测到数据有变化,将变化的数据同步到其它节点,不需要在另一节点上重新执行。

11.问:

在同步数据的过程中,若同步到一个节点花费的时间是10毫秒,那么同步到2个

节点花费的时间是不是20毫秒,3个节点是不是30毫秒,

答:

不是,在同步数据的过程是以一个并发的形式进行的,所以这个时间和同步到一个节点花费的时间应该是基本相同。

12.问:

数据同步的具体消耗是多少,

答:

消耗是和实际的应用场景以及硬件环境有关系的,假设在环境相同的情况下,以某次测试的真实数据来说,单机执行3毫秒;在集群环境下执行3.5毫秒。

accurategraspfivebigdevelopmentconceptofrichconnotation,advocateinnovation,andfocusedoncoordination,andadvocategreen,andthickplantopen,andadvanceshared,putfivebigdevelopmentconceptimplementationto"xxxxxxxx"constructionofspecificpracticeinthe,effectiveimproveledeconomicdevelopmentnewnormalofcapacityandlevel.Second,wemuststrivetoimprovecapacitytoimplementpolicies

13.问:

Moebius在同步数据的过程中是如何保证数据一致性的,

答:

Moebius中间件宿主在SQLServer里面,监测数据的变化,当有数剧变化时,中间件才工作,同步工作是在一个分布式事务中完成的,由MSDTC保证,所以数据是一致的。

14.问:

使用MSDTC来保证事务的一致性是不是会增加额外的消耗,消耗会不会很大,

答:

不是,首先分布式事务是有消耗,要比本地事务消耗大一点儿。

15.问:

Moebius集群和SQLServer的镜像有什么区别,

答:

相同:

都采用了基于事务日志的复制技术

a)不同:

镜像中只有一个服务器可读写,镜像服务器处于recoveing状态,是不能提

供读写服务的(可以通过快照做报表等,详细参考MS镜像相关介绍;在Moebius

集群中,两个节点是处于同等地位的,都是可读写的,可以有效均衡访问压力的。

b)在复制日志的过程中镜像是严格按照日志的顺序逐条传送的,在Moebius集群中,

采用了传输压缩以及智能同步策略,以最小的消耗完成数据的同步(详细参考

Moebius帮助文档中中间件的同步策略及传输压缩部分)

16.问:

我不知道Moebius集群是否适合我当前的应用,到底对我的数据库能提升多大性

能,若想得出一个直观的测试结果,我该怎么做,

答:

确实,在不同的应用场景、不同的硬件环境,所表现出来的性能提升是有差别的,建议您将自己的真实业务的还原到测试环境中,通过实际的测试数据来得出结论。

格瑞趋势提供了专门的测试工具,您也可以用专业的测试工具如LoadRunner等

部署Moebius集群时操作系统问题列表,1.现象:

CannotuseSAVETRANSACTIONwithinadistributedtransaction.或者:

不能在分布

式事务内部使用SAVETRANSACTION

解决办法:

升级到版本2047以上

2.现象:

不允许启动新请求,因为该请求应具有有效的事务描述符

accurategraspfivebigdevelopmentconceptofrichconnotation,advocateinnovation,andfocusedoncoordination,andadvocategreen,andthickplantopen,andadvanceshared,putfivebigdevelopmentconceptimplementationto"xxxxxxxx"constructionofspecificpracticeinthe,effectiveimproveledeconomicdevelopmentnewnormalofcapacityandlevel.Second,wemuststrivetoimprovecapacitytoimplementpolicies

解决办法:

属于一个.Net2.0的Bug,打hotfix:

ndp20-kb916002-x86

3.现象:

在使用DTCping的时候会出现一个警告"Warning:

theCIDvaluesforbothtest

machinesarethesame"

原因:

克隆的操作系统导致

解决:

添加/删除

4.现象:

win2000上不能启动分布式错误:

解决办法:

打开注册表,HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC修改以下两项:

AllowonlySecureRpcCalls=0

TurnoffRpcSecurity=1

5.现象:

accurategraspfivebigdevelopmentconceptofrichconnotation,advocateinnovation,andfocusedoncoordination,andadvocategreen,andthickplantopen,andadvanceshared,putfivebigdevelopmentconceptimplementationto"xxxxxxxx"constructionofspecificpracticeinthe,effectiveimproveledeconomicdevelopmentnewnormalofcapacityandlevel.Second,wemuststrivetoimprovecapacitytoimplementpolicies

解决办法:

1、安装.net补丁文件extensibilitymsm.msi

2、在命令行中执行

3、%SYSTEMROOT%\M\Framework\v2.0.50727\regasm"C:

\Program

Files\MoebiusforSQLServer2005\GRQSH.Moebius.Studio.dll"

4、cdC:

\ProgramFiles\MicrosoftSQLServer\90\Tools\Binn\VSShell\Common7\IDE

5、qlWb.exe/setup

部署中问题列表

1.现象:

添加第二个节点不成功

原因:

没有按照用户手册中的说明操作,在添加第二个或其他节点时,这些节点的数据

库都是由首节点备份还原所得到。

accurategraspfivebigdevelopmentconceptofrichconnotation,advocateinnovation,andfocusedoncoordination,andadvocategreen,andthickplantopen,andadvanceshared,putfivebigdevelopmentconceptimplementationto"xxxxxxxx"constructionofspecificpracticeinthe,effectiveimproveledeconomicdevelopmentnewnormalofcapacityandlevel.Second,wemuststrivetoimprovecapacitytoimplementpolicies

2.现象:

添加好后,保存不成功

3.原因:

1、DTC服务没配置,注意不论是操作工具还是数据节点说在的服务器都要配置

DTC服务。

2、防火墙开启,请暂时关闭防火墙,或者将DTC所涉及的端口全部开启。

3、克隆操作系统

4.克隆操作系统解决办法:

6、UseAddWindowsComponents,andremoveNetworkDTC.

7、Gotothecommandlineandrun:

MSDTC-uninstall

8、GototheregistryanddeletetheMSDTCkeysin

HKLM/Software/Microsoft/Software/MSDTC,

HKLM/System/CurrentControlSet/Services/MSDTC,and

HKEY_CLASSES_ROOT\CID(ifthey'restillthere).

9、Reboot

10、Gotothecommandlineandrun:

MSDTC-installaccurategraspfivebigdevelopmentconceptofrichconnotation,advocateinnovation,andfocusedoncoordination,andadvocategreen,andthickplantopen,andadvanceshared,putfivebigdevelopmentconceptimplementationto"xxxxxxxx"constructionofspecificpracticeinthe,effectiveimproveledeconomicdevelopmentnewnormalofcapacityandlevel.Second,wemuststrivetoimprovecapacitytoimplementpolicies

11、UseAddWindowsComponents,andaddNetworkDTC.

12、Gotothecommandlineandrun:

netstartmsdtc

accurategraspfivebigdevelopmentconcep

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1