SQLSERVER2008负载均衡设计_第1页
SQLSERVER2008负载均衡设计_第2页
SQLSERVER2008负载均衡设计_第3页
SQLSERVER2008负载均衡设计_第4页
SQLSERVER2008负载均衡设计_第5页
已阅读5页,还剩2页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、SQL SERVER 200负8 载均衡设计摘要:SQL SERVER2OO8开发的系统随着数据量的增大, 系统性能不能满足用户的需求。可以通过大量的高性能的硬 件投入,来提高系统的性能。这样,浪费更新的旧硬件,造 成不必要的损失,这不是解决问题最好的方法。如何在原有 的硬件基础上,提高系统的性能,发挥已有硬件的优势,让 每一个节点共同完成系统应用。关键词:负载均衡; ORACLE;SQL SERVER中图分类号: TP311 文献标识码: A 文章编号: 1009-3044(2015)12-0008-021 概述 随着经济的高速发展,企业规模逐渐扩大,数据量急剧 膨胀。早期搭建的SQL SE

2、RVE服务环境已经不能满足业务量 数据增加带来数据库服务器性能下降,导致应用程序响应时 间不能满足客户需求。虽然微软数据库 SQL SERVE不断升级, 但是改造现有状况很难。不断增长的数据量带来很多新的问 题,如:查询、添加、更新数据等操作响应时间变得越来越 长,尽管应用程序不断的优化, 也不能满足用户体验的需求。解决目前存在的问题有以下几种方法: 1)扩展服务器性能,增加服务器吞吐能力,在硬件上 扩展现在的需要。但是,已经退下的旧的服务设备,实属资 源浪费,单节点的提升会对整个系统产生瓶颈,仍然不能满 足用户的需求,提高性能是失败的。另外,这种单一硬件提 升整个服务的性能不是一种可持续发展

3、方案,不是一种可取 方案。2)SQL SERVE升级到ORACL平台,采用“ RAC”来解 决,ORACLE“ RAC采用共享缓存(Cache)的办法,来是实 现锁的互换,多个实例同时分担负载。不但能负载均衡而且扩展也很方便。同时也和微软集群 (MSCS和SQL2005镜像 作了对比。 这种方法虽然能够解决问题, 但是要将应用移植, 代码要重新编写,关键是有好多旧系统在里面,当时开发的 人员都离开了。所以这将是一个即费财力、物力、人力,同 时还要面临很大风险的一个艰难过程。3)在原有基础上,进行 SQL SERVER200上进行集群。 SQL SERVE数据库服务器都只有“热备”的解决方案,而

4、没 有“负载均衡”和“集群”完备的解决方案。如果在原有硬 件、软件没有发生改变情况下,完成数据库的负载均衡,是 一种比较优的解决方案。那么,如何完成这种集群呢?2 数据库解决方案1)SQL SERVER200数据库解决方案SQL SERVER200通过提供各种高可用性解决方案,大大缩短应用数据库的宕机时间,解决方案保障用户每周 7 天,每天 24 小时访问数据,有效的提高数据库运行性能,提高 了数据库的高可用性。数据库提供了各种的Always On功能技术,可以提高数据库的安全性能,大大缩减停机时间并可 以获得满意级别的可用性,并减少了由于大量用户同时访问 同一数据库而导致的冲突,但是配置比较

5、麻烦。SQL SERVER 200高8 可用和数据库恢复解决方案, 体现在 数据镜像、事务复制、日志传送、 备份/还原、故障转移群集、 数据库快照、数据压缩等技术上(如图1简单SQLSERVE数据库构架)。备份压缩,通常情况下,减少压缩备份所需的设备IO,减少了备份所需的存储空间,大大提高备份的速度。但是, 明显占用CPU,影响数据库的性能。数据压缩,将数据进行压缩,以减少存储空间,提高传 输效率,它是对数据通过算法将数据有效的重新组织,并减 少冗余和存储空间的一种技术方法。在存储、传输过程中得 到很大的应用。数据镜像,当同一时间内,只有一个主体数据库,其他数据库为镜像数据库或备用数据库,并实

6、现多个数据库之间进行数据同步。当主体数据库服务器出现故障时,能够及时 切换到备用数据库中,并标识为主体数据库。因此,当数据 库出现状况时,并不影响用户的体验。SQL SERVER 200处8 理海量数据来说,执行的性能降低,为提高数据库服务能力,在原有基础上,增加负载均衡和集 群的解决方案。当用户来请求时,对用户的SQL语句进行平衡、并对SQL语句进行优化,已提升数据库服务器的执行能 力、安全能力。2)ORACLE RA数据库负载均衡解决方案ORACLE RA(在所有的服务器使用和管理同一个数据库环境下,为了减少每一台服务器的工作量,需要两台以上的 服务器组成集群,另需要一个共享存储设备。还需

7、要具备集 群软件和RAC组件,而且服务器上的操作系统必须是同一个 版本。RAC可以自动进行负载平衡、故障修复和规划停机时 间,以支持高可用性应用程序。 如图2 ORACLE RA(负载均衡 设计。3)数据库服务器存在以下问题 数据库的两个节点分别是运行时和备份用的,当出现 故障时,备份节点开始工作。 虽然两个节点同时工作,但是计算机在性能上还是得 不到提升,备份节点不能解决运行发生时的作用。 只是追求更高配置的机器,并不能从根本上解决性能 问题。 从细节上讲,当一个节点出现故障的时候,另一个节 点接管业务又是需要一定的步骤和时间。如:Node2 首先必须识别出 Node1 出现故障了; 必须通

8、过软 件的方式使 Node2 与共享磁盘保持透明; Node1 中创建的 IP 地址也必须在 Node2 中创建; Node1 中创建的网络名称也必 须在 Node2 中创建;管理 Node1 的数据库服务必须在 Node2 中重新启动;上面的步骤必须连续的进行(共享磁盘和网络连接好后SQL Server才能启动,IP地址成功后网络名称才能构创建。)3 集群中间件设计SQL SERVER 200在8 原有基础之上, 实现数据库集群, 采 用独立数据库存储,不使用共享存储,并将n 个节点数据库实现同步,可以通过镜像完成。但是将 n 个节点平等对待, 没有主服务器和辅助服务器区分,只是在负载上有所

9、侧重, 通过一定算法实现节点的负载工作分配。它将植入在 SQL Server 内核的中间件集群软件,完成负载均衡(如图 3 实现 负载均衡)。系统架构能够在SQL Server上构建多种集群,可以实现自动平衡负载和故障恢复,它可为您提供数 据库从小规模发展到大规模一整套完整的解决方案。系统采 用横向扩展, 取而代之的是硬件的追求, 在原有系统基础上, 发挥每一个节点的功能,达到安全性能不降低、提高系统的 性能。数据可以存储在每个机器自己的存储介质中。对机器的 要求不高,只要能够互相连通就可以完成系统的集群架构。采用灵活,方便在 SQL Server上构建多种集群,系统可 以实现自动平衡负载和故

10、障恢复,它可为您提供数据库从小 规模发展到大规模一整套完整的解决方案。采用此中间件设计在 SQL SERVER 200高8可用性基础上, 把含有 n 个节点的数据库服务器组成数据库集群。增加SQLServer 内核的中间件,和以往不同的是让简单的备份工作的 节点也要承担工作任务。主要工作是负载均衡、同步数据、SQL语句优化、故障转移、备份恢复等。备份数据库服务器和运行数据库服务器共同承担数据 备份功能和共享服务器压力,提高数据库的安全性、减少单 一节点完成服务的压力。4 软件测试测试环境:操作系统: Windows Server 2008 R2数据库版本: SQL Server 2008服务器

11、 A: 10.0.0.1服务器 B: 10.0.0.2虚拟 IP: 10.0.0.15 集群的搭建完成后,就可以开始对集群进行测试。首先 是负载均衡测试。负载均衡的测试办法是使用压力测试工具, 然后分别查看两个实例的分析。负载均衡的算法是默认根据两台服务器的过去一段时 间采集的性能指标进行分析,优先将查询导到负载低的服务器中,但集群刚搭建的时候没有历史数据,则按照平均分配的原则。下面是我使用SQL Query Stress进行负载均衡测试的 结果,如图 4所示。我开了 100 个线程,每个线程循环 10 次,来进行一个非常简单的查询。5 结束语 本文在原有框架下进行改进,并发挥各自的功能,在此 架构下,主要完成负载均衡算法,采用中间件技术的数据库 集群系统中各执行节点的负载进行运算,根据阈值对该集群 系统进行负载均衡,避免硬件的浪费,从根本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论