[发明专利]一种实现SQL-Server负载均衡集群的方法无效
申请号: | 201210149228.8 | 申请日: | 2012-05-15 |
公开(公告)号: | CN102693291A | 公开(公告)日: | 2012-09-26 |
发明(设计)人: | 邱养勇;乔鑫 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 250014 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 sql server 负载 均衡 集群 方法 | ||
技术领域
本发明涉及一种计算机数据库应用技术,具体地说是一种实现SQL-Server负载均衡集群的方法。
背景技术
随着企业的发展,应用系统功能的多样化,伴随着数据的增长,使运行于Windows平台上的SQL Server数据库表现出让用户难以接受的瓶颈,如:请求响应缓慢,系统的处理速度明显低于系统刚上线时的速度,数据库服务器端CPU不堪重负,内存资源也面临着耗尽的状况,磁盘的IO利用率更是居高不下。种种方面说明我们的SQL Server数据库在性能方面没有跟上企业与数据的发展步伐,数据库系统随时面临着崩溃且可能丢失客户重要数据的危险。
面对这种困境,目前SQL Server应用比较广泛的集群,例如微软的故障转移集群、SQL Server镜像、第三方公司的双机热备软件等虽然在一定程度上可以满足部分客户保证数据安全、可靠的要求,但它们都不具备负载均衡的功能,无法动态负载客户端的请求响应,也无法降低数据库服务端的负载与压力,且主机的利用率在50%,未完全利用。由于上述技术的不足,我们基于宿主在多节点数据库内的中间件,通过检测数据库内变化的数据,分析出导致数据变化的SQL语句,将分析出的SQL语句类型采取不同的同步策略,将变化的数据并发且实时同步到其他各节点,对外提供统一连接的虚拟IP地址与端口号。整个检测,分析,同步的过程对用户是透明的,从而很好的实现数据库的负载均衡,分担并减轻主机的负载。
发明内容
本发明的目的是本发明的目的是提供一种实现SQL Server集群负载均衡的方法。
本发明的目的是按以下方式实现的,利用宿主在节点上的中间件检测数据库内变化的数据,分析导致数据变化的SQL语句,并将分析出的SQL语句类型采取不同的同步策略,实时并发同步到其他各节点,保证了各节点多份数据在任意时刻数据的一致性。该方法的集群配置对外提供访问的统一IP地址与端口号来负载响应前端应用的请求,从而实现集群的负载均衡功能。具体步骤如下:
首先在集群的各节点上安装SQL Server 2008 R2,然后在各节点上分别安装并配置需要宿主到数据库内的中间件,此中间件会宿主于SQL Server数据库的引擎中,集群的配置管理器集成到SQL Server Management Studio管理工具中,方便配置、管理与维护。同时此方法的负载均衡集群是基于每个数据库来实现的,集群粒度更小,应用起来非常灵活。
本发明的有益效果是:保证数据的安全可靠性,既可支持无共享磁盘架构,也可以支持共享磁盘架构;集群节点间的数据同步复制;每个节点上均有一份数据库;可持续扩展的方案,实现负载均衡;消除数据库主机的单点故障;同步效率高,支持异地;能实现性能的横向扩展;以SQL语句同步,消耗最小,节省带宽。同时此方法的负载均衡集群是基于每个数据库来实现的,集群粒度更小,应用起来非常灵活。该方法的负载均衡集群提供了数据库检查,智能同步策略,负载均衡策略,故障检测,虚拟IP,自动故障转移,预警通知等完备的功能,用以满足不同应用的需要。
附图说明
图1是集群负载均衡系统结构示意图。
具体实施方式
参照说明书附图对本发明的方法作以下详细地说明。
利用宿主在节点上的中间件检测数据库内变化的数据,分析导致数据变化的SQL语句,并将分析出的SQL语句类型采取不同的同步策略,实时并发同步到其他各节点,保证了各节点多份数据在任意时刻数据的一致性。该方法的集群配置对外提供访问的统一IP地址与端口号来负载响应前端应用的请求,从而实现集群的负载均衡功能。
实施例
集群的每个节点均部署宿主的中间件,且各节点上都建立一份需要同步的数据库,配置好之后,对外提供访问此集群的统一虚拟IP地址和指定端口号,例如8000,应用层配置连接数据库的IP地址为集群虚拟IP,端口为8000。当前端应用提交了修改数据的请求后,集群中其中一个节点的数据会发生改变,同时宿主在数据库内的中间件会检测到引起此节点数据发生变化的SQL语句,然后宿主中间件会对此SQL语句进行分析,将此SQL语句实时并发同步给其他的节点,从而保证了集群中各节点间数据的一致性。
当前端应用提交了查询数据的请求后,宿主在数据库内的中间件会检测到应用请求的SQL语句并进行分析,然后根据集群各节点的负载情况将请求的SQL语句分发到其他各节点,基本上做到平均分发请求响应,提高整个应用系统的响应速度,从而实现集群的负载均衡。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210149228.8/2.html,转载请声明来源钻瓜专利网。