[发明专利]一种实现MICROSOFT SQL SERVER数据库负载均衡集群的方法无效
| 申请号: | 201010011876.8 | 申请日: | 2010-01-15 |
| 公开(公告)号: | CN101727496A | 公开(公告)日: | 2010-06-09 |
| 发明(设计)人: | 李志强 | 申请(专利权)人: | 山东高效能服务器和存储研究院 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 250014 山*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 实现 microsoft sql server 数据库 负载 均衡 集群 方法 | ||
技术领域
本发明涉及数据库集群应用领域,具体涉及一种实现Microsoft SQL Server数据库负载均衡集群的方法。
背景技术
数据库集群(Cluster)软件还是符合市场竞争的要求,尽管各厂商宣称自己的架构如何完美,但是始终不能改变Oracle当先,大家追逐的事实,在集群的解决方案上Oracle RAC还是领先于包括微软在内的其它数据库厂商,它能满足客户高可用性、高性能和方便扩展的需求。
微软以其简单易用等优点占据了很大一部分客户,但是同时也不得不面临这样的局面:伴随着企业的发展,企业的数据量和访问量也会迅猛增加(如一些电子商务企业或网站),而这个时候数据库就会面临很大的负载和压力,意味着数据库会成为提升整个信息系统的瓶颈,这时大家常常会有两种解决的办法:
第一、升级到综合性能更强大的硬件,带来的问题是硬件的浪费,然而,单节点体系结构最终会达到一个瓶颈并无法实现进一步的有效扩展。具体表现为逐渐缩小的回报率或者价格惊人的昂贵硬件设备。系统得不到可持续的扩展,不能从根本上解决问题;
第二、组建数据库集群,而Microsoft所提供的集群解决方案又不能很好的满足需求,好多用户就面临着要移植到Oracle平台上,采用RAC来解决。大家都知道,这将是一个即费财力又费物力、人力时同时还要面临很大风险的一个艰难过程。
那么有没有一个即不向大机器的方向发展,又不用升级到Oracle RAC上的方案呢?能不能在Microsoft SQL Server的架构上实现像Oracle RAC一样高性能、高可用性和方便扩展的集群解决方案呢?这正是本发明所尝试解决的问题。
发明内容
本发明的目的是提供一种实现Microsoft SQL Server数据库负载均衡集群的方法。
本发明的目的是按以下方式实现的,基于无共享磁盘架构,在SQL Server数据库集群节点上部署一种“数据库中间件”程序,当集群中的任一节点数据产生变化时,“数据库中间件”就会将变化的数据同步到其他节点,各节点上“数据中间件”充分保证数据每时每刻都同时保持一致的,数据库查询操作允许在任何节点中执行,从而做到真正的负载均衡。其中:
基于无共享磁盘架构,是指在SQL Server数据库数据直接存储在数据库集群节点中的本地存储设备上。
数据库中间件程序,是指在应用访问层对数据库操作进行分析和处理的一种程序软件。
数据库中间件将变化的数据同步到其他节点,是指当“数据库中间件”检测到集群中的某一节点数据产生变化时,“数据库中间件”会触发变更数据的同步操作,将变更的数据复制到集群其他节点。
数据在每时每刻都是一致的,是指在任意时间点,SQL Server数据库集群节点内的数据库数据完全一样。
数据库查询操作做到真正的负载均衡,是指SQL Server数据库集群节点同时处理数据库查询操作。
本发明的优异效果是采用了2个数据库节点进行Microsoft SQL Server数据库负载均衡集群的实现设计。设计上采用无共享架构,数据库数据直接存储在每个节点的本地存储中,节点1和节点2具有相同的数据,“数据库中间件”程序解析到一个更新的SQL语句后,会同时更新两个数据层的数据库。更新操作是并行的,保证了两个数据库中的数据是一致的,实现了真正的冗余,当读取时可以从两个节点的随便一个中读取数据,做到了负载均衡。
附图说明
附图1为SQL Server数据库负载均衡器集群架构示意图。
附图2为SQL Server数据库负载均衡器集群数据读写过程示意图。
附图3为SQL Server数据库负载均衡器集群数据更新过程示意图。
具体实施方式
参照附图对本发明的方法做以下详细的说明。
实现原理为:和SQL Server数据库镜像一样,每个数据库节点都有自己的数据,然后将一种“数据库中间件”的程序宿主在数据库的内部,每个节点数据库上写入数据导致数据变化时,SQL Server则会激活“数据库中间件”,将把变化的数据同步到其他的节点上。其他节点发生变化也是一样。因为“中间件”宿主在数据库内,所以它能够把每个同步的Session(数据库中间件操作会话)和SQLServer的Session(数据库事务操作会话)绑定到一起,也就是使用户的执行和数据的同步成为一个原子操作,从而保证数据在每时每刻都是一致的。因此查询可以随便到每个机器上去查,从而做到了真正的负载均衡。
实施的具体步骤如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东高效能服务器和存储研究院,未经山东高效能服务器和存储研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010011876.8/2.html,转载请声明来源钻瓜专利网。





