数据库集群技术分析和比较

数据库集群技术分析和比较  一、引言  数据库是用来保存计算的最终结果的,所以是整个信息系统的最重要组成部分。在许多人看来,当前的数据库技术已经可以说是非常地成熟了。然而,在满足不断增长的联机事务处理应用方面,当前的数据库技术其实还存在不少急迫需要解决的技术...显示全部
数据库集群技术分析和比较  

一、引言
  数据库是用来保存计算的最终结果的,所以是整个信息系统的最重要组成部分。在许多人看来,当前的数据库技术已经可以说是非常地成熟了。然而,在满足不断增长的联机事务处理应用方面,当前的数据库技术其实还存在不少急迫需要解决的技术问题。
  对于所有的数据库而言,除了记录正确的处理结果之外,它们都面临着四方面的挑战:如何提高处理速度,数据可用性、数据安全性和数据集可扩性,也就是说,如何使当前的数据库具有这四方面的可伸缩性,使客户能同时得到更高的处理速度、更高的数据可用性、更高的数据安全性和更大的数据集,而不是提升了其中的部分指标,却损坏了其余的指标或者其余的指标没有改进。随着IT应用的深入和有线,无线网络的快速增长,联机事务处理业务对以上四方面提出了更高的要求。
  将多个数据库联在一起组成数据库集群来达到上述目标应该说是一个很自然的想法。理想的数据库集群应该可以做到以下几点:
  ◆ 在需要更高数据库处理速度的时候,我们只需简单增加数据库服务器就可以了。这样可以大大减小硬件投资的风险,而且大大提高现有服务的质量。
  ◆ 在任何时刻需要有多个随时可用的实时同步数据服务。为了防灾,最好有多个异地的同步数据服务。这不光会大大增加数据可用性,还会有意想不到的更高数据库处理速度的效益。
  ◆ 除了密码保护之外,我们最好能控制企业内部对数据库的非法访问。
  ◆ 数据集的可扩性可能是最简单的要求了。但是,用增加数据库服务器的办法来扩大数据集对数据可用性会产生负面影响。如果没有数据冗余,那么每增加一台服务器,整个系统的可用性就会成倍地降低。最好的结果是我们能任意增大数据集而没有对可用性的负面影响。
  上述最后一条揭示了我们将面临的技术困难--除了异常简单的应用之外,有关数据库集群的技术都是非常困难和复杂的。更具挑战性的是,实际的应用要求上述几方面的指标能同时提升,而不是某一指标提升了,另外的指标却下降了。然而,所有的技术都是有副作用的,这就是当前数据库集群技术面临的重大困难。
  客观地比较各种数据库技术是很困难的,比较各种数据库集群技术可见会更困难。本文试图对当前主要的数据库集群用到的具体技术进行分析,目的是评价每种技术的优缺点,并且按它们各自的设计目的和使用效益评分, 最后得出每种数据库集群的一个综合评价值。从而建立一个客观评价数据库集群技术的评价体系。 我们希望能用这个评价标准来评价现有的和今后将出现的数据库集群技术, 并且理清一些很容易混淆的概念。
  为了使得这个研究更具实用价值, 我们还包括了两项和具体技术没有直接关系的评价:集群管理难易度和应用的透明度。
  评分标准:每一项技术都用从0(不支持)分到1(支持最好)分给出评分,减分是按四分法来做, 所有的效益都大致分为四个梯度,按大约的比例减分。

接下......收起
参与6

返回modaoshi的回答

“答”则兼济天下,请您为题主分忧!
接上......

u 通过广域网的复制技术:

  ◆ 远程主动异步复制: 所有的集群系统都支持这种复制技术,只不过对队列的管理能力有所不同。DM,FM和RAID的得分全是0分。RAID在所有的远程复制类别里的得分全是0。

  ◆ 远程主动同步复制:只有ICX得了满分,其它的系统得0分。

  ◆ 远程被动异步复制:DM 和 FM支持这种类型的复制,因为DM和FM对集群是透明的,是在集群系统的下一层工作的,这样,如果有需要的话,所有的集群系统都可以利用它们提供的功能。因此,所有的集群系统也得了满分。

  ◆ 远程被动同步复制:DM和FM支持这种类型的复制,因为这种复制方式只在距离很近的时候才能使用(使用双模光纤,半径五英里),因此这种技术得0.5分。同样地,因为DM和FM对集群是透明的, 所有的集群系统都可以利用它们提供的功能, 如果部署的话,所有的集群系统都得到同样的分数。

  安全性

  ◆ 口令: 所有集群系统都得满分。

  ◆ 数据库防火墙:只有ICX得满分。

  数据集的可扩性

  ◆ 数据分区:. ICX和所有基于数据库引擎的集群系统得满分,其他零分。

  ◆ 数据分区的可用性: 只有ICX得满分。

  集群管理

  所有共享磁盘的集群系统得了0.75分,因为此种系统中的每一单独的服务器需要特殊处理,但是和独立磁盘的集群系统比较,就容易管理多了(虽然进行初始化和修改配置的时候也不那么容易)。独立磁盘的集群系统象 UDB, ASE和MySQL CS得分稍低点,得了0.5分,那是因为它们的手工操作增加了。ICX的得分在易管理性(初始配置和将来的修改)方面和独立磁盘集群系统的得分相当,但是在对底层数据管理复杂性方面的得分却增加了。那些磁盘工具,即DM,FM和RAID,由于它们对集群是透明的,因为得了满分。

  应用透明度

  所有的集群系统都只得了0.75,是因为它们对应用程序都有些特殊的要求,以便应用程序能使用这些集群功能。但是DM,FM和RAID得了满分,那是因为它们对应用程序是完全透明的。

  八、结论

  ICX得分最高是由于它独特的技术优势造成的。基于中间件的数据库集群技术具有许多先天的优点,这些优点是使用任何别的方法很难做到的。

  这种复制中间件位于关键的网络路径上,监听所有进出数据库系统的流量,它能方便地提供防火墙和其它安全服务,保护物理的数据库服务器。

  这种中间件复制技术通过多个服务器的并发处理很容易地隐藏了处理的延迟。除此之外,这种配置提供了硬件、软件和通讯链路充分的冗余,因此提供了最佳的系统可用性。

  中间件事务复制引擎只复制那些对于完成客户事务处理而言必须的SQL语句。相比较而言,文件和磁盘复制方法就涉及到移动大量的数据,因为它们不清楚事务处理的边界。这使得远程交易复制通过低带宽,低延迟的网络成为可能。

  ICX-UDS事务处理复制引擎的另外一个显著特点是:在无需停止集群服务的情况下自动重新同步数据集。这使得集群修复、数据库重新组织、重新索引、范式更新、硬件和通讯链路更新,集群中机器的增减等在不停止集群服务的情况下成为可能。

  很显然,一旦我们突破了并行同步交易复制的技术障碍,用户就能通过由多个数据库服务器构成的集群来获得高性能,高可用性和高安全性。

  使用ICX-UDS,每一个事务处理实时地在多个服务器上处理。此系统可以极大地简化企业数据库的备份过程,包括灾难预防和恢复,同时自动地提供了高可用性。通过将只读查询自动分离,负载均衡,达到了高性能。通过将只读查询分离到专门的负载均衡服务上,或者在应用程序里嵌入ICX控制语句,这样就能获得远高于目前SMP技术能达到的交易处理速度。

  ICX的最大优点是它同时解决了数据库集群技术面临的四方面的挑战。此技术为获得具有高可扩性的高性能数据库提供了一条切实可行的途径,同时能灵活地适应未来的技术变化。

2010-03-05
浏览758

回答者

modaoshi
擅长领域: 数据库

modaoshi 最近回答过的问题

回答状态

  • 发布时间:2010-03-05
  • 关注会员:0 人
  • 回答浏览:758
  • X社区推广