产品概述 |
ICX是个为下一代电子事务处理设计的全新数据库扩展产品,当今市场上没有同类竞争产品,当前的最新版本是ICX 3.1。
新数据库扩展器-ICX(意思是:I SEEK X DATABASE SERVERS),也就是说,在ICX后面可以同时连接n个数据库,结构如下图所示: |
图1. ICX 工作示意图 |
| 所有的客户数据都通过ICX访问数据库。ICX可以同时连接多台数据库(2-16台,具体连多少台,看客户的具体需求而定),这若干台数据库的内容在任何时刻由ICX保证是完全一致的。也就是说,ICX采用了全新的并发事务处理的方式,向连接的N台数据库同步复制事务处理,使得系统在任何时刻具有多个一致的最新逻辑数据库数据集。 |
ICX的性能特点 |
1) 非入侵部署: 一对(IP,port)。 应用程序接口不作任何修改。
2) 兼容各种数据库版本、数据库复制产品、也兼容各种数据库集群产品。
3) 通过常用的宽带网络, 快速的事务处理同步复制。
4) 几乎不停的服务: 自动的错误恢复。
5) 零单点错误源,不使用两阶段提交协议(2PC)。
6) 可伸缩的数据库性能(负载均衡+非入侵式的数据库阵列扩展)
7) 灾难预防和恢复的能力。
8) 内置数据库访问防火墙。
9) 内置加密/解密算法,用于公共网络传输。
10) 不停机的数据挖掘能力。 |
ICX集群的构成、使用和维护 |
1) 全中文操作界面,使用简单方便
2) 管理功能强大,操作简单
3) 与数据库完美结合,管理员可以通过网络上任意一台机器即可完成整个ICX集群系统的管理和维护。
4) 对于每一步的操作,ICX都将生成自己的日志记录,便于事后的错误定位,原因查找等。 |
整个ICX集群,由三部分软件组成:
1) Agent:安装在各数据库服务器上的Agent。此代理负责与个数据库引擎的交互,一般情况下,只要简单安装,不用系统设置就可以使用。系统管理员只要启动此后台进程,使其处于活动状态就即可。
2) Monitor: 即ICX-UDS监控程序控制面板,是ICX数据库扩展器的核心程序,必须运行在单独的机器上,或者也可以运行在数据库服务器上。通过此控制面板,系统管理员只要确认数据库扩展器和监控程序已经处于运行状态即可。 |
图2. ICX数据库扩展器监控程序控制面板操作界面示意图 |
| 3) Control Center和ICX同步工具: Control Center即ICX-UDS控制中心。Control Center和ICX同步工具可以运行在本LAN上的任何一台机器上,这样就可以通过网络上的任意一台机器,来管理或配置本系统中的数据库扩展器ICX,或者在某台数据库系统出现错误的情况下,尽心系统的自动同步恢复。 |
图3. ICX控制中心程序启动界面示意图 |
| 控制中心完成一些常见的配置工作,一般地,只要修改个别参数就可以了,其余的使用默认的缺省设置即可。下图是控制中心的常规配置,只要设置名称就可以了。 |
图4. ICX控制中心的常规配置界面示意图 |
| 下图是控制中心的集群配置,只要设置各数据库名称及其IP地址即可。 |
图5. ICX控制中心的集群配置界面示意图 |
如果是试用版,系统将提示文件许可已经失效,请与本软件开发商联系。
下图是ICX控制中心的错误恢复-数据同步工具界面。 |
图6. ICX错误恢复-数据同步工具操作界面示意图 |
| 当其中某台数据库出现错误,只需点击一个按钮就可以自动进行数据恢复,如下图所示,当Sever-a数据库因各种原因出现错误的时候,管理员只需要简单按一下开始同步按钮,系统就自动以Server-b为源数据库自动将Server-b的数据库同步到Server-a数据库,直到Server-a数据库和Server-b数据库的数据完全一致为止。 |
ICX的运行环境、系统需求 |
1)当前的版本是3.1,支持微软公司的各种SQL Server数据库,即ICX支持Microsoft SQL Server 7.0,Microsoft SQL Server 2000,Microsoft SQL Server 20005,包括标准版(Standard Edition)和企业版(Enterprise Edition)。
2)ICX监控程序必须运行在Microsoft Windows服务器上,即包括Microsoft Windows Server 2003 Standard Edition, Windows Server 2003 Enterprise Edition, Windows Server 2003 Datacenter Edition, 64-bit versions of Windows Server 2003 Enterprise and Datacenter Editions, Windows? 2000 Server, Windows 2000 Advanced Server, Windows 2000 Datacenter Server。
3)ICX控制中心和同步工具,可以运行在除上述服务操作系统上之外,还可以运行在Windows 98, Windows 2000 Professional, Windows 2003 Professional, Windows XP等系统上。 |
ICX部署与实施 |
针对不同的客户应用需求,ICX可以有不同的部署方案。下面是常见的部署情形:
部署方案一、
ICX典型的部署是同时驱动多个同步一致的数据库服务器。 |

图7. 带自动负载均衡和复制功能的最典型的ICX部署 |
上图显示了ICX的一个最典型的部署,同时驱动两个数据库服务器的数据库集群。下面是一些前提条件:
1) 所有服务器运行同一版本的数据库系统。
2) 所有的服务器具有相同的初始数据集,登陆信息,权限信息等。
3) ICX数据库扩展器要接管原来赋予给主数据库的IP地址和端口号,所有的数据库服务器将重新获得新的IP地址和端口号。
当前的ICX版本ICX-UDS DB Scaler 3.1最多可以挂接16个数据库(理论上可以挂更多,但是从工程实际来说,挂接16个数据库已经足够了)。
在这种结构里,ICX数据库扩展器将自动过滤出无状态的数据库只读查询,并将它们负载均衡到所有服务器上。在这里,路由器就象一个在线的?#32534;译器?#65292;它将所有对数据库的更新操作(和带状态的查询操作)发送到所有数据库上执行,而将无状态的查询操作只发送到其中某一数据库服务器上。这样,客户在数据库处理速度,可用性和安全性(如果设置了防火墙功能的话)等方面同时得到提高。
只要无状态查询能被简单地过滤出来,这种配置适合于大多数一般的应用。
部署方案二、
对于那些统计报表和数据挖掘类的应用,用户可以通过将数据操作分成复制和只读两种类型去取得更快的处理速度。图 4示意了这样一种配置。 |
 图8. ICX 网关和负载均衡器配置示意图 |
需要注意的是:这种配置需要额外的ODBC/JDBC连接,对应用程序的只读查询需要重新定向。
如果用户能在应用程序的源代码稍作改动,就可以取的更高的处理速度。使用图7和图8同样的配置,和ICX内建的控制机制,除了自动过滤只读操作来进行负载均衡之外,用户还能指定更多的只读操作来负载均衡。
灾难预防只要增加一台或者几台远程服务器就能做到了。
ICX 数据库扩展器的容错可以通过一台或多台备份网关来达到。在同一网段上, ICX数据库扩展器有自动IP地址接管功能。 不同网段的ICX数据库扩展器容错可以用DNS服务器来控制。
加载一个非同步的数据库可以构造出一个不影响主服务机群的近似于实时的数据源,可用于数据挖掘和统计报表等应用。
ICX管理员最复杂的任务大概就是数据集的再同步了(resynchronization)。这牵涉到使用ICX的 Power Resync 工具。一旦定义好后, 管理员只需要经常察看保证没有意外就可以了。
|
成功案例 |
| 本产品在美国、日本、澳大利亚、中国等已经有广泛的成功案例,以下仅列举几个典型案例。 |
典型案例
典型案例 #1
一家网上零售数据处理商(名为RAC)在全美国有四处数据中心,分别位于田纳西州、新泽西州、罗得岛州和得克萨斯州。
遇到的问题:SQL Server 数据库负荷过于重,交易处理很慢。
解决办法:单台ICX 3.1用作并发复制器,后面连接了四台SQL Server数据库(SQL Server标准版)。
RAC公司使用了基于Web Service的负载均衡器来负载均衡数据库只读查询。通过ICX后面连接了四个SQL Server数据库,RAC公司的CTO惊讶地发现数据库交易处理的性能大大地改善了,CPU的利用率由平时的90%降低到50%。
RAC公司的客户很快适应了这种性能的改进,公司业务进展很快,所有这些好处是在没有采购昂贵信息设备的前提下取得的。
RAC公司的系统每天处理一百万条以上的交易。平均来说,每天的连接数在十万个以上。下面是ICX在RAC公司运行了四天后,ICX的控制中心ICX-UDS Controller的画面截图: |

图9. ICX控制中心示意图
图10. RAC公司改造后的数据库系统结构示意图 |
典型案例 #2
贝公司是周边产品的全球领先厂商,为电脑、数码和移动产品的用户提供创新的连接技术。贝公司拥有最全面的 IT外设配件产品,包括宽带网络、 KVM 、线缆、防涌接线板和 UPS ,更致力于用最先进的 USB 、 Firewire?和 Bluetooth? 技术为移动电话、 PDA 、 iPod? 和其它移动设备提供连接方案。
贝公司在美、欧,亚拥有多个物流中心,以确保产品能迅速满足世界各地的订单。
遇到的问题:Web访问量的增加,降低了维护/帮助门户的性能,同时,贝公司也需要提高维护/帮助门户的可用性。
解决办法:两台服务器(一台主复制,另一台主均衡). 从复制和从均衡也交错地安装在这两台服务器上。它们同时控制两台SQL Server数据库。
贝公司采用了并发复制器和负载均衡器,将应用程序对数据库的访问分解成更新操作和只读查询操作。另外,每个主数据库扩展器都由一个备份数据库扩展器做备份,这样,一旦主数据库扩展器出错的话,备份数据库扩展器将接管主数据库扩展器的当前工作。
贝公司于2005年4月份正式开始使用ICX。从那之后,Web访问的性能得到了明显的改善,同时由于有了ICX的Power Resync工具,维护工作也变得简单多了。ICX的负载均衡器使得系统能在不停止对外服务的情况下及时地提供统计报表。
现在所有的访问流量都经过这几个数据库扩展器,这样就能够进一步利用多个同步一致的数据库数据来获得更好的性能表现。
|

图11. 贝公司改造后的数据库系统结构示意图
|
典型案例 #3
K公司是一家位于旧金山市的咨询服务公司。K公司帮助他们的日本客户建立一个大规模的Internet商业门户,这个门户要求能处理很大容量的交易数量。绝大多数的网络流量是来自网络信息查询的浏览活动。
遇到的问题:如何在使用低成本的SQL Server(标准版的SQL Server)情况下,取得很高的事务处理性能?
解决办法:使用两台ICX 3.1作为数据库复制器(一台主,另一台从),后面连接了15个Microsoft SQL Server(标准版的SQL Server)。
K公司的软件工程师们设计出一个解决方案,让所有的信息查询只访问其中的某台SQL Server,同时数据库的更新操作全是通过ICX复制器来进行。通过ICX后面连接了15台数据同步一致的Microsoft SQL Server数据库,K公司向人们展示了由ICX构成的这种集群在超负荷压力情况下的出色性能表现(在同样硬件条件下,没有任何单一的SQL Server能保持不丢失网络连接)。
|
图12. K公司的日本客户数据库系统结构示意图
|
ICX给客户带来的益处
|
1)高数据集可靠性,大大简化数据备份的过程 棗 因为ICX使得系统同时保持了N个实时一致的数据集,大大提高了数据库数据的可靠性,因此大大简化了数据备份的过程,甚至不需要象现在通常的做法那样进行数据备份了,因为这多台数据库其实就是数据库的多个实时备份。
2)高可靠性,确保系统365X24X7的服务棗 对数据库的访问首先经过数据库扩展器?/span>ICX,而且ICX可以做HA(双机热备份),这样真正消除了单点错误源,大大提高整个系统的可靠性,使系统真正达到5个9(99.999%)的系统可靠性。
3)高系统性能,动态负载均衡 棗 ICX对数据库的访问事务进行过滤和分发,数据库的访问事务主要分为三大类:数据更新事务,无状态查询事务和有状态查询事务。无状态查询事务可以动态负载到任意一个数据库上处理。因为大部分数据库应用是查询多于数据库更新,因此整个系统的性能将得到大大的改善。
4)高可用性,自动的错误恢复,确保系统不停止服务棗 一旦系统中某个数据库出现错误,ICX将自动进行错误恢复,直到数据库同步为止,这样ICX帮助系统提高了灾难预防和灾难恢复能力,同时降低了管理的成本。值得指出的是,在整个错误恢复过程中,系统的服务是照常进行的。
5)低成本,降低客户TCO(总体拥有成本) 棗 因为ICX具有独创的理论和技术,因此具有很强的兼容性,它兼容当前所有的数据库技术、数据库集群技术、数据库备份技术和数据存储技术。所以ICX能够给客户带来了很低的TCO(总体拥有成本),使得广大客户能够采用廉价的软硬构件就能组建出一个数据库集群系统,而此系统的性能、可靠性和价格,总体而言,将远胜于别的厂商提供的专用而且昂贵的数据库集群系统。当前市场上,这类新型数据库集群是ICX特有的。
总之,一个相对理想的数据库集群系统应该同时具备下列五个方面的指标:
1) 高可用性
2) 高可靠性
3) 高伸缩性
4) 数据集的可扩性
5) 降低系统的TCO(总体拥有成本)
当前的数据库系统的问题在于在追求上述某一指标的过程中,忽视、甚至损害了其余的重要指标。而真正好的解决方案是同时提升上述五方面的指标。ICX做到了这点。
同时ICX使得采用廉价的软硬件构件组建具有上述五方面指标的数据库集群系统有了可能,其性价比、可靠性足够与大型、昂贵的高端系统相媲美,甚至更好。
|