LanDom
作者LanDom·2010-05-07 18:27
软件开发工程师·互联网企业

哪一个分布式 DB2 9.5 版本适合您?

字数 33259阅读 3025评论 0赞 0
本文内容包括:
 简介
 DB2 具有公共的代码库
 DB2 Everyplace 版本……小设备也有大威力
 DB2 Personal Edition……在个人平台上提供 DB2 的所有能力
 DB2 Express-C……它免费用于构建、开发和发布
 DB2 Express-C Fixed Term License(Subscription)……它不但可以免费构建、开发和发布,还可以设置 HA,而且它提供了支持!
 DB2 Express Edition……简单、可靠且便宜
 DB2 Workgroup Server Edition……它比 DB2 Express 大一点儿,但并不悬殊
 DB2 Enterprise Server Edition……无可匹敌的可伸缩性、弹性和灵活性
 DB2 Data Stream Edition
 仅针对开发人员的提示
 结束语
 参考资料 
 关于作者
 对本文的评价

2008 年 2 月 21 日

了解 IBM® DB2® 9.5 for Linux®, UNIX®, and Windows® 的每个版本的详细信息。作者介绍了每个版本的概况、许可方面的考虑因素以及自 DB2 9 以来的更改,描述了客户正在用每个 DB2 版本实现的一些有趣功能。这篇流行的文章已经针对 DB2 9.5 进行了修改,符合当前的情况。

简介

信息管理软件在企业计算中处于核心地位。计算需要访问大量信息,如 XML、消息队列、文档、流视频以及其他富媒体类型。随需应变的发展使得连续可用性成为必需,并促使公司在集成其业务操作和处理从而将其转换为随需应变模式时,将事务、商业智能、业务性能管理和内容管理应用程序集成在一起。

DB2 信息管理软件组合通过一组丰富的服务奠定了随需应变提供信息所需的基础。可以使用这些服务支持和查询结构化、半结构化和非结构化数据,集成数据,提供实体解析、数据管理、联邦和内容管理,以及丰富的运行时分析功能。这些服务统称为信息即服务(Information as a Service)

信息管理软件组合的核心是 DB2 9.5 数据服务器,它也是本文的焦点。请注意,本文仅描述运行在分布式和普及平台上的数据服务器系列。关于整个 DB2 产品组合的信息,请参阅 Information Management Software Web 站点或每个产品各自的 Web 站点:DB2 for z/OS ® 或 DB2 for i5/OS ™。

还有另一组 DB2 数据服务器版本,它们组成 DB2 Warehouse 产品集(它们都基于本文讨论的 DB2 数据服务器)。因为这些版本在基本数据服务器之上提供扩展服务,所以本文不讨论它们。

要做出使用 DB2 的决策很容易。但是,DB2 有不同的版本(以及各自的许可选项),它们各自适合于市场中的不同部分。从掌上型电脑(Palmtop)到每秒超过万亿次浮点运算的超级计算机(Teraflop),总有一款 DB2 适合您。

我写这篇文章是为了帮助您决定使用哪种分布式 DB2 版本来为您的企业提供动力。随着时间的推移,服务器版本不断变化,本文已经变成了一篇详细描述当前的许可和产品变更的参考资料。因此,在阅读本文时请一定注意发表日期。

还应该注意,从 DB2 8 到 DB2 9 有许多变更,本文不讨论这些变更,以免本文过分复杂。在某些情况下,您可能拥有在 DB2 9 中不存在的特性或许可证。例如,DB2 8 Express Edition 要求购买一个服务器许可证和许多指定的用户权利,这样才能支持环境中的用户集。在 DB2 9 和更高版本中,在使用用户许可方式时没有服务器许可证。关于版本之间的变更、迁移和更新权利的信息,请与当地的 IBM 销售人员或 IBM 业务伙伴联系。

在与客户交谈时,常常有人问我许多关于高可用性的许可问题,或不同 DB2 版本之间的特性比较。关于这些主题和更多主题的详细信息,我曾经撰写的其他文章可能会有所帮助:





回页首


DB2 具有公共的代码库

在选择 DB2 版本来处理您的工作负载时,首先应该理解的是:除了 DB2 Everyplace® 和 Apache Derby(其 SQL API 与 DB2 完全兼容)以外,每个 DB2 版本对于不同的分布式平台都有相同的代码库。DB2 对于 Linux 的支持扩展到了所有的 IBM 服务器上:System i®、System z®、System x® 和 System p®,所有这些平台上的 DB2 也都是分布式版本。例如,DB2 for Linux on System z 与基于 Intel 或 AMD 的工作站上的 DB2 具有相同的代码库和许可方式。这意味着,尽管 DB2 for Linux on System z 服务器驻留在 System z 服务器上,但是访问数据并不需要 DB2 Connect。(请仔细理解这句话 —— 如果连接 System z 服务器上的 DB2 for z/OS 数据服务器,就需要 DB2 Connect;这里的差异在于 DB2 for Linux on a System z Integrated Facility for Linux(IFL)是一个分布式 DB2 版本。)

公共的代码库提供了可移植性,并确保如果需要扩展 DB2 解决方案,就可以无缝地完成,而无需考虑成本、平台或迁移工作量;因为 DB2 系列中的 SQL API 大约 95% 是公共的,所以在 DB2 系列成员之间迁移也很容易。

除了 SQL API 之外,还有其他兼容性特性。例如,有一个公共的 Web 服务框架,它允许通过鼠标单击将业务逻辑组合进面向服务体系结构(SOA)框架中。实际上,这个框架(称为 IBM Data Web Services)适用于所有 IBM 数据服务器,包括 Informix!

尽管听起来不可思议,但是许多 IBM 数据服务器特性在每个 DB2 版本上都是相同的。例如,所有 IBM 数据服务器都用一个公共的 API 处理 SQL。例如,DB2 for z/OS 和 DB2 for Windows 的 JDBC 驱动程序具有相同的代码。还有一个公共的客户机:从 DB2 9.5 开始,如果要连接 DB2 for z/OS、DB2 for AIX 或 Informix,那么只需安装一个客户机。另外,应用程序开发和管理工具(比如 Visual Studio 集成或 IBM Data Studio)也对整个系列有效。在所有平台上都启用了 pureQuery。简单地说,在进行应用程序开发、部署、管理等活动时,您的技能可以在整个 IBM DB2 系列上重用(某些情况下也包括 Informix)。

图 1 展示了各种受支持的分布式平台的 DB2 9.5 体系结构视图。

如果决定更改关于硬件体系结构(例如,从基于 Intel 的体系结构更改为 POWER6 体系结构)、操作系统(比如从 Windows® 迁移到 Linux™)或编程体系结构(比如从 .NET 更改为 Java,或反过来)的策略方向,就可以依赖于 DB2 适合各种平台这一特点。很简单,您可以自由地做出选择,而 DB2 确实是世界上惟一真正允许您根据环境定制信息平台的广度和深度的数据服务器。


图 1. DB2 在 Windows®、Linux(在 iSeries、pSeries、zSeries 和 xSeries 上)和 UNIX® 上有公共的代码库
DB2 在 Windows、Linux 和 UNIX 上有公共的代码库

图 2 中显示了 DB2 的不同版本。除了 DB2 Everyplace 和 Apache Derby 以外,当沿着 “版本链” 向上移动时,在大多数情况下可以认为图 2 底部所显示的版本的各种功能、特性和优点都包括在每个后续版本中,这就像一层套一层的俄罗斯娃娃。我说 “在大多数情况下” 是因为 DB2 Express-C 和 DB2 Express-C FTL 包含的一些特性(比如 pureXML 和 HADR)并不包含在某些 DB2 版本中(除非另外购买它们)。

注意:本文不涉及 DB2 Warehouse 版本,以后会通过单独的系列讨论它们。


图 2. 分布式 DB2 9.5 产品系列
分布式 DB2 9.5 产品系列




回页首


DB2 Everyplace 版本……小设备也有大威力

移动计算的真正威力并不在于设备本身,而在于从其他数据源获取数据的能力。DB2 Everyplace(DB2e) 将 DB2 的能力赋予移动设备,利用移动设备的能力与其他系统同步数据,将企业数据按原样传输到移动员工的口袋里,并向员工提供就地更新企业数据的能力(甚至是在偶尔连接的环境中)。

DB2e 不仅仅只是一个移动计算基础结构。它是一个完整的开发环境,包含构建、部署和支持功能强大的电子商务应用程序所需的工具。DB2e 提供一个内存占用极少的引擎(大约 350 KB),其中包含完整的安全性功能,如表级和连接级(包括 SSL)加密,以及能够带来高性能的高级索引技术。它可以在多种手持设备上良好地运行,支持 Palm OS、Windows Mobile for Pocket PC、传统的 Windows 桌面平台、Symbian、QNX Neutrino 和各种 Linux 发行版(包括 BlueCat 等嵌入式发行版)等等。

用于开发 DB2e 应用程序的 SQL API 是构建 DB2 应用程序所使用的 SQL API 的子集。这意味着企业应用程序通常可以极其容易地进行扩展以包含移动设备。DB2e 十分易于使用,用户不需要任何数据库管理技能,因为它是百分之百自我管理的。DB2e 对于开发人员而言也极其灵活,它支持多种可编程 API 接口,比如 ODBC、JDBC、.NET、DB2 CLI 等等。

对于开发 DB2e 应用程序来说,好消息是数据库引擎是独立于平台的。所以能够无缝地将 Pocket PC 设备上的 DB2e 数据库迁移到 Symbian 智能电话或支持的其他设备上。这个特性(加上对应用程序开发的丰富支持)让开发人员可以在所有平台上快速创建、部署和支持应用程序。

DB2e 可以作为完全同步的环境或作为独立的嵌入式数据库来发放许可证。DB2e 提供了两个版本:DB2 Everyplace Database Edition(DB2e Database)和 DB2 Everyplace Enterprise Edition(DB2e Enterprise)。

DB2e Database 没有用来将数据扩展或同步到后端企业服务器的同步中间件,不过它提供了基于命令行的导入和导出实用程序。DB2e Database 主要用于需要嵌入式数据库或本地关系存储设施的应用程序,数据库通过某种应用程序暴露给最终用户(他们绝不会真正看到数据库),而且由于设备的限制,要求内存占用量很小。

DB2e Enterprise 许可证为客户提供不限数量的 DB2e 数据库引擎,可将这些引擎部署在他们公司的移动设备上,并支持这些设备通过附带的 DB2 Everyplace Synchronization Server(DB2e Sync Server)进行数据同步。DB2e Sync Server 处理 DB2e 与 Apache Derby 数据服务器和兼容 JDBC 的后端数据服务器(即所有 DB2 版本、Oracle、Informix、SQL Server 等等)之间的数据、配置文件和管理同步。除此之外,还有一个特殊的 DB2 系列同步适配器(在分布式 DB2 版本中是免费的),它使用 SQL 复制技术。DB2e Sync Server 可以支持的并发同步数目取决于服务器的硬件配置、相关的工作负载以及数据变更率。如果需要进行扩展以处理极其大量的并发同步,可以安装任意一种 Java 应用服务器(比如 IBM WebSphere Application Server)。除此之外,可以通过 DB2e Sync Server 群配置支持更高的可伸缩性和可用性,允许把许多 DB2e Sync Server 配置成集群,提供负载平衡和高可用性服务。

Apache Derby
在 Linux World 2004 上,IBM 宣布将 IBM Cloudscape 代码捐献给 Apache Software Foundation,作为 Apache Derby 数据库。这个开放源码的数据库在 2 MB 的 .JAR 文件中提供了大量特性,可以在应用程序中免费使用;并且可以免费变更用途用于盈利。Apache Derby SQL API 与 DB2 for Linux, UNIX, and Windows 数据服务器完全兼容,所以当需要功能更丰富的数据库管理系统时,可以进行无缝的迁移。

许可和定价

DB2e Database 按照授权用户方式发放许可证。如果您有 10 个设备,它们在三个 8 小时时间段中由 30 位用户平等地共享,就需要 30 个 DB2e Database 许可证。

与 DB2e Enterprise 相关的许可规则使用 价值单元(VU) 方式,这种方式按照安装 DB2e Sync Server 组件的底层服务器的 VU 级别进行产品定价。这个许可证允许部署和同步任意数量的 DB2e 客户机;但是,所有这些设备必须连接到经过许可的 DB2e Sync Server,才能执行这个操作。

请考虑一下……

如果需要在资源有限的移动设备(例如移动电话)上使用关系引擎(可能还有同步服务),那么就可能需要使用 DB2e。对于偶尔用膝上型计算机进行连接的移动用户,如果他们的应用程序不需要使用当前 DB2e 不包含的高级 DB2 数据服务器功能(比如触发器或存储过程),那么也可以考虑使用该产品。这种部署可能要求在机器或移动设备上使用一个 “黑箱” 数据服务器(不希望让商人能够收集统计数据或构建索引)。

如果需要使用支持触发器、存储过程等功能的更强大的数据库,但是空间限制仍然很严格,而且设备可以运行 Java,那么也可以考虑使用 Apache Derby,它的内存占用量只有大约 2 MB。Apache Derby 数据库可以充当 DB2 Everyplace 环境中的同步客户机。另一个选择是 DB2 Express-C FTL(在本文后面讨论)。

在 DB2 Everyplace 上可以实现的有趣功能

当您下一次到本地的器材商店购买 Behr 油漆时(Behr 是一家顶级油漆生产商,其历史可以追溯到 1947 年),可以试试 Behr 的交互式油漆选择工具。可以使用它为工程选择合适的颜色,在室内或室外设计中展现这些颜色的效果,甚至在以后获得工程的细节。这个工具很有趣,也很简单,您只需通过触摸屏幕来设计自己梦想的房间,DB2e 会负责存储和管理您的梦想……DB2e 会让您找到 Trading Spaces 设计师的感觉!它真的很酷!





回页首


DB2 Personal Edition……在个人平台上提供 DB2 的所有能力

B2 Personal Edition(DB2 Personal)是运行在基于桌面的普通硬件上的单用户数据服务器。DB2 Personal 可用在基于 Intel 和 AMD 的 Windows 和 Linux 工作站上。DB2 Personal 具有 DB2 Express Edition 中的大多数特性,但是它无法用作中心数据库服务器,因为远程客户机不能连接到这个 DB2 版本的数据库。但是,DB2 管理工具可以连接到这个 DB2 版本以执行远程管理。这个 DB2 版本还包含对 64 位实例的支持并且没有内存限制。

DB2 Personal 提供安装 DB2 Net Search Extender 和 Spatial Extender 的权利(它们在 DB2 9 和更高版本中是免费的),还支持基于 SQL 的复制。复制特性可以与 DB2 数据服务器相结合以支持偶尔连接的工作人员,也可以用来创建自己的 “发布/订阅” 体系结构。DB2 Personal 还免费包含 pureXML 特性(稍后详细讨论)。

许可和定价

DB2 Personal 按照安装发放许可证,这与大多数 PC 工作站软件非常相似。即使多位用户轮流使用同一个安装 DB2 Personal 的端点(他们显然无法同时工作,因为只有一台机器),仍然只需要一个许可证,因为它是按照安装而不是授权用户发放许可证的。DB2 Personal 的每个安装不需要考虑 RAM、价值单元等因素。例如,如果您有 10 个工作站,它们在三个 8 小时时间段中由 30 位用户平等地共享,那么需要 10 个 DB2 Personal 许可证。

请考虑一下……

对于需要将个人单用户数据库用于大量 PC 工作站的应用程序来说,DB2 Personal 将是一个非常好的选择,可以在每个工作站上安装一个 DB2 Personal 拷贝。如果需要与分布式 DB2 数据服务器百分之百兼容,或者需要支持高级特性(比如 pureXML),那么 DB2 Personal 是比 DB2 Everyplace 和 Apache Derby 更合适的选择。偶尔连接的用户可能希望利用 DB2 Personal 内置的 SQL 复制特性来设置同步的数据和管理环境,在这种环境中移动的员工或远程服务器可以与他们的企业保持联系。当然,这只适合于膝上型计算机用户和某些工作站,例如那些运行销售点(POS)应用程序或销售自动化(SFA)应用程序的机器。最后,开发人员也常常使用 DB2 Personal —— 但是,我个人认为 DB2 Express-C 更适合开发人员。

在 DB2 Personal 上可以实现的有趣功能

National Geographic Society(著名的《国家地理》杂志的出版商)使用 DB2 Personal 增强 Genographic Project —— 这是一个为期五年的研究项目,它从成千上万的志愿者那里收集 DNA 样本,并用一个高级的 DB2 数据库在样本数据中寻找规律。这个项目的目标是研究人类的迁移路径(“我们从哪里来?” 和 “我们是如何来到这里的?”)研究团队由 11 位主要调查员领导,他们配备坚固耐用的 IBM ThinkPad 膝上型计算机并使用生物指纹扫描器来确认每个研究人员的身份。这些 ThinkPad 安装了一个在 DB2 Personal 上运行的定制的数据收集应用程序。在这些设备上收集并存储信息,以后将信息从 DB2 Personal 发送回 DB2 数据服务器进行 DNA 分析。用 DB2 跟踪人类的迁移历史。这真的很酷!





回页首


DB2 Express-C……它免费用于构建、开发和发布

在 2006 年 1 月 30 日,IBM 发布了一个特殊的免费 DB2 数据服务器版本,它称为 DB2 Express-C。注意,它并不是 “正式的” DB2 版本。DB2 Express-C 是为合作伙伴和开发社区设计的,但是这个版本几乎可以在任何环境中使用。相比之下,一些免费的 Express 竞争产品不但对 RAM 和处理器设置了严格的限制,还限制了在线实用程序、数据库对象、自治、自动维护、内存位模型等,但是 DB2 Express-C 没有这么多限制。如果您研究这个 DB2 版本,会为它提供的丰富特性感到吃惊。DB2 Express-C 非常适合开发人员和中小型部署、学术社区等等。

课堂中的 DB2

DB2 也包含在 IBM 学院计划 中。该计划旨在将 IBM 的大量学术和研究成果、资源和优势提供给全球高等教育机构的教职人员和研究人员。在这个计划中,可以免费使用 DB2 来教授数据库技能。目前,有许多教育机构都在教授有价值的 DB2 技能;例如宾夕法尼亚州立大学和昆士大学(位于安大略省金斯敦市)都设有关于 DB2 技术的课程。

与 DB2 Express 相比,DB2 Express-C 中 包含的主要特性有:

  • 不保证代码。例如,对这个产品不提供支持,也不提供 DB2 Spatial Extender 等的下载。注意,仍然可以下载并使用免费的 DB2 Extender(DB2 Spatial ExtenderDB2 Net Search Extender);但是,您要自己解决在使用这个 DB2 版本时遇到的问题。
  • 不能购买额外的 Feature Pack 来提供许多扩展服务。例如,不能购买 Storage Optimization Feature Pack,它提供深度行和备份映像压缩服务。但是您应该知道,DB2 Express-C 附带 pureXML 特性(稍后详细讨论),所以可以免费使用 DB2 XML 技术的所有功能。
  • 不能使用集群软件(比如 HACMP、SteelEye 或 DB2 9.5 内置的集群服务)将多台 DB2 Express-C 数据服务器配置成集群来提供高可用性。如果需要在高可用性环境中设置 DB2 Express-C,必须至少购买 DB2 Express-C Fixed Term License(FTL),FTL 是在这个 DB2 版本上增加的订购选项。
  • 没有复制服务。这个问题使许多人产生了混淆,因为以前的 DB2 Express-C 版本间接指出在这个包中可以使用 DB2 内置的 SQL 复制的 APPLY 组件。在 DB2 Express-C 中不能使用任何复制服务。
  • 不能购买获奖的 24x7 IBM Passport Advantage 支持模型,而收费的 DB2 数据服务器可以使用这个模型。这可能是 DB2 Express-C 最大的限制之一(不能设置高可用性数据服务器集群是另一个主要限制)。

    DB2 Express-C 的支持模型依赖于它的社区。这个社区的成员包括来自世界上最大型公司的最具经验的 DBA 以及众多的 DB2 开发人员和工程师,他们积极回答论坛上的提问,您可以在这里寻求 关于 DB2 Express-C 的帮助、建议和支持(这种方式就像是开放源码社区)。为了促进这个社区的发展,在 developerWorks Information Management 等网站上提供了实用的参考资料。

  • DB2 Express-C 只提供当前版本。换句话说,当一个 DB2 Express-C 新版本发布时,就不再提供老版本。

如果希望使用上面列出的特性,至少需要购买 DB2 Express-C FTL(或者收费的其他 DB2 版本)。

关于 DB2 Express-C 的好消息是对它的限制不多:没有数据库大小限制,没有自动管理或工具限制,没有内存模型限制(可以使用 64 位内存模型),等等 —— 您使用的就是纯正的 DB2。而一些 Express 竞争产品往往设置了许多限制;但是,这超出了本文的范围。

DB2 Express-C 可以在运行 Linux 或 Windows 操作系统的服务器上使用。在 IBM DB2 Express-C 下载站点 上可以找到支持平台的完整列表。

开发人员喜欢 DB2 Express-C,因为可以使用它免费开发和部署应用程序。ISV 也喜欢 DB2 Express-C,因为可以使用它免费开发 DB2 并在他们的打包应用程序中部署和发布 DB2。请牢记,因为 DB2 Express-C 是纯正的 DB2,这意味着可以不加修改地将这些应用程序部署到任何 DB2 版本上,甚至可以迁移到 DB2 for z/OS 上(只要在编写应用程序时使用 DB2 系列 95+% 的公共 SQL API 集)。

在学术领域,教育工作者可以利用本文前面提到的 IBM 学院计划。这个计划允许他们免费使用 DB2 技术,允许他们的学生在任何课程中使用 DB2 Express-C。这些 DB2 参与者可以不受限制地开展活动,免费构建、部署和发布数据服务器。

DB2 Express-C 在 2006 年 8 月 17 日的 VARBusiness' 2006 上获得了 Best of the Midmarket 奖。您不想试试 DB2 Express-C 吗?马上 下载 一个拷贝。

许可和定价

DB2 Express-C 可以免费构建、部署和发布。因此,这个 DB2 版本没有相关联的许可费用。但是,在任何规模的服务器上,它限制 DB2 引擎只能使用最多 2 GB 的内存和 2 个处理器核心。可以在虚拟化环境中使用 DB2 Express-C。

DB2 9.5 中的变更

以前的 DB2 Express-C 版本被限制为最多 4 GB 的内存和 4 个处理器插槽。用户负责通过 DB2 配置设置和个人观察实施这些限制。在 DB2 9.5 中,这些资源将遵循前一节描述的新限制。

请考虑一下……

DB2 Express-C 可以用于许多不同的应用程序和项目 —— 尤其是因为它提供了收费 DB2 版本中的许多特性,而这些特性是其他 Express 竞争产品不具备的。

在 DB2 Express-C 上可以实现的有趣功能

Concursive(以前称为 Centric CRM)是一家开放源码客户关系管理(CRM)应用程序提供商,他们的应用程序套件包括最流行的 CRM 模块和附加功能,比如 Web-site Authoring、Enterprise Content Management、Collaborative Project Management、Document Management、Customer Surveys 和高级的 Help Desk 功能。数以千计的小型公司和一些 Fortune 500 公司都在使用 Concursive。Concursive(在它还称为 Centric CRM 时)选择了 DB2 Express-C,因为他们希望吸引个人用户,帮助他们成为 Global 1,000 公司。因为 DB2 Express-C 的代码库与其他 DB2 数据服务器相同,所以他们的产品也可以供大企业使用。实际上,数以千计的 Concursive 都是用 DB2 Express-C 安装的。US Food Service(一家资产达 180 亿美元的 Fortune 200 公司)在 IBM 产品(包括 DB2 Express-C)上部署了 Concursive CRM 应用程序。

Concursive 只用一周就将他们的应用程序套件(包含 200 多万行代码)迁移到了 DB2 Express-C。这真的很酷!





回页首


DB2 Express-C Fixed Term License(Subscription)……它不但可以免费构建、开发和发布,还可以设置 HA,而且它提供了支持!

在 2007 年 4 月 30 日,IBM 发布了另一个 DB2 Express-C 产品,DB2 Express-C Fixed Term License(FTL)。从本质上说,购买 DB2 Express-C FTL 会提供 DB2 Express-C 所不具备的三个特性:

  • 每个 DB2 Express-C FTL 数据服务器都包含 IBM 的 24x7 支持。这可以帮助您解决问题,并提供与 DB2 数据服务器匹配的维护计划。尽管这些服务器提供支持,但是仍然必须访问 DB2 Express-C 论坛DB2 Express-C Web page on Developer's Domain,因为在这些网站上可以了解关于 DB2 的许多信息。
  • 与 DB2 Express-C 不同,DB2 Express-C FTL 为数据服务器增加了完整的 SQL 复制功能(包括 CAPTURE 和 APPLY 组件),因此适合偶尔连接的客户机或发布/订阅数据分布模型。
  • DB2 Express-C FTL 允许在高可用性环境中将多台 DB2 Express-C FTL 数据服务器设置成集群。在高可用性环境中设置 DB2 Express-C FTL 数据服务器集群时,无论以何种方式使用备用 DB2 Express-C FTL 数据服务器,必须为每台 数据服务器购买许可证;例如,cold、warm 或 hot 备用。更多信息请参考 为高可用性环境中的分布式 DB2 9.5 服务器颁发许可
  • DB2 Express-C FTL 免费包含 High Availability Disaster Recovery(HADR)特性,这使建立高可用性 DB2 Express-C FTL 数据服务器集群的功能更加出众。
  • DB2 Express-C FTL 具有与常规 DB2 数据服务器更新计划相关联的 Fix Pack。例如,当为 DB2 发布一个 Fix Pack 时,也会为 DB2 Express-C FTL 提供这个 Fix Pack。另外,同时提供多个 DB2 Express-C FTL 版本,而 DB2 Express-C 只提供一个版本,不提供以前的代码库。

图 3 总结了 DB2 Express-C 与 DB2 Express-C FTL 之间的差异。


图 3. DB2 Express-C 与 DB2 Express-C FTL® 之间的差异
DB2 Express-C 与 DB2 Express-C FTL 之间的差异

当然,因为 DB2 Express-C FTL 的代码库与 DB2 Express-C 相同(各个 DB2 版本的代码库都相同),只是增加了前面提到的功能,所以仍然具备 DB2 Express 的灵活性和健壮性。与 DB2 Express-C 一样,也不能为 DB2 Express-C FTL 购买 Feature Pack;例如,不能购买 Storage Optimization Feature Pack,它提供深度行和备份映像压缩服务。因为 DB2 Express-C FTL 提供支持,所以仍然可以使用免费的 Extender 并获得相关支持 —— 您不必自己解决问题,IBM 支持团队会帮助您。

可以在运行 Linux 或 Windows 操作系统的服务器上使用 DB2 Express-C FTL。在 IBM DB2 Express-C 下载站点 上可以找到支持平台的完整列表。

许可和定价

DB2 Express-C FTL 的 FTL 部分实际上是一个预订许可证。在为 DB2 Express-C FTL 购买许可证时,实际上是为 FTL 部分付费。这个预订提供一年的支持,还授权使用前面提到的附加功能。所以,在为这个产品发放许可证时,不需要考虑处理器、处理核心、VU 等因素。只需为每台服务器购买一个支持合同;很简单吧?

例如,如果您有两台 DB2 Express-C FTL 数据服务器,那么必须购买两份预订(FTL)合同。如果使用 HADR 将这两台 DB2 Express-C FTL 数据服务器组合成集群,那么仍然要购买两份预订合同,因为对于 DB2 Express-C FTL,没有与高可用性相关的特殊许可规则。如果在一台机器上的两个 VMWare 会话中安装 DB2 Express-C FTL,就必须购买两个 DB2 Express-C FTL 许可证。为 DB2 Express-C FTL 购买许可证很简单吧?

您应该知道,在任何规模的服务器上,DB2 Express-C FTL 只能使用最多 4 个处理内核和 4 GB 的内存。

DB2 9.5 中的变更

以前的 DB2 Express-C FTL 版本被限制为最多 4 GB 的内存和 4 个处理器插槽。用户负责通过 DB2 配置设置和个人观察实施这些限制。在 DB2 9.5 中,这些资源将遵循前面小节描述的新限制。

请考虑一下……

DB2 Express-C FTL 可以用于许多不同的应用程序和项目 —— 尤其是因为它提供了收费 DB2 版本中的许多特性,而这些特性是其他 Express 竞争产品不具备的。如果您对 DB2 Express-C 满意,但是需要高可用性、复制、24x7 支持、pureXML 等附加特性,那么可以考虑使用 DB2 Express-C FTL。

在 DB2 Express-C FTL 上可以实现的有趣功能

因为这个产品刚发布不久,我还没有从客户那里了解到相关的反馈(只是到目前为止还没有)。但是,在免费数据服务器上提供 HADR、24x7 支持、复制和 pureXML 意味着什么呢?实际上大量生产性 OLTP 工作负载在两个插槽的机器上运行,现在可以以与 MySQL 相同的价格获得出色的可用性特性(HADR)、支持和 pureXML。这真的 很酷!





回页首


DB2 Express Edition……简单、可靠且便宜

DB2 Express Edition(DB2 Express)是一个入门级的具有完整支持的 DB2 数据服务器,是专门定制的廉价、特性完整、达到工业级别和基于开放行业标准的关系数据库。这个 DB2 版本的目标用户通常是 SMB(中小型企业)和 ISV。对于使用运行 LinuxSolaris x86Windows 的服务器的企业,DB2 Express 提供了非常诱人的切入点和富有竞争力的价格(前面的链接提供最新的平台支持信息)。

DB2 Express 还提供了大量可供选择的业务伙伴应用程序、服务和支持。它附带一组定价计划,合作伙伴可以利用这些计划为其企业产生可观的收入。当然,企业也可以选择在其环境中部署 DB2 Express,并且也经常这样做。

因为 DB2 Express 的核心是功能完整的 DB2 服务器(在这里找不到其他竞争产品中存在的技术性限制),所以 DBA 可以利用其内置的自主可管理性特性,如 IBM 的 Self Tuning Memory Manager(STMM)、Configuration Advisor、Health Center、Design Advisor、自主维护计划、自动备份调优和节流以及更多功能。这些服务有助于提高 DB2 解决方案的性能和可靠性,同时将管理复杂性、所需的技能和总拥有成本降到最低。

DB2 Express 支持高可用性(HA)体系结构,如 HA 集群技术和日志传送。DB2 9.5 中内置的 Tivoli System Automation(TSA)可用性技术和 HADR 不包含在基本的 DB2 Express 版本中,但是可以通过 Feature Pack 单独购买这些特性(稍后详细讨论)。考虑到其他以 SMB 为目标的流行数据库仅仅在其高级版本中包含高级在线和管理功能,加之 DB2 Express 的价格和自主功能,您可能从来不曾知道 DB2 Express 的存在,而且还可以包含在您的笔记本中!

这个 DB2 版本与用于 Linux、Windows 和 UNIX 平台的其他可伸缩 DB2 关系数据库产品完全兼容,您可以预先配制 DB2 Express,以便轻松透明地安装到应用程序中。客户会喜欢 DB2 Express,因为他们所看到的全部东西只是一个解决方案;业务伙伴也会喜欢它,因为他们可以信任它能够在真正无人值守的情况下运行。

DB2 Express 附带 DB2 Net Search Extender(在所有 DB2 9 版本中都是免费的)、Spatial Extender(在所有 DB2 版本中也是免费的)以及基于 SQL 的复制。

关于 DB2 Express 特别好的一点是,它具有 “企业可扩展性”。有许多 Feature Packs 可以添加到 DB2 Express 数据服务器上,从而用企业服务充实它的功能。同时,仍然可以享受这个 DB2 版本的低价格。设计这些附加 Feature Pack 的目的是避免中端市场解决方案被迫使用企业级产品,而市场上的其他竞争产品会出现这一问题。

DB2 Express 数据服务器的 Feature Pack

可以通过购买 Feature Packs,用许多企业服务扩展 DB2 Express。Feature Pack 是在 DB2 9 中首次引入并在 DB2 9.5 中继续更新。通过引入 Feature Pack,客户可以按照菜单定制 方式为应用程序购买数据服务,应用程序就可以在不使用大型服务器的情况下,使用通常在成熟的企业解决方案中才有的服务。

Feature Pack 必须采用与 DB2 数据服务器相同的许可方式,也就是按照授权用户许可证或者按照安装它们的服务器的价值单元级别授予许可。DB2 Express 9.5 可用的 Feature Pack 有变化,包括:

  • High Availability Feature for DB2 Express它提供的许多服务可以提高在 DB2 Express 数据服务器上运行的应用程序的可用性,包括支持在线表重组、用于 DB2 9.5 内置的 Tivoli System Automation(TSA)高可用性服务的两节点集群许可证和 High Availability Disaster Recovery(HADR)。这个 Feature Pack 中的所有特性都包含在基本 DB2 Workgroup 和 DB2 Enterprise 版本中。

    HADR 是一组可用性服务,它们提供可靠的数据库可用性和一个保护计划,不但在整个组合上提供冗余,甚至能够满足最苛刻的可用性服务水平协议,支持以秒度量的平均修复(MTTR)时间。HADR 最出色的方面是,只需单击按钮,就能够设置好它。

    在线表重组与其他厂商的产品功能都不一样。它可以对表进行连续的重组,而不需要传统镜像复制方式所需的大量磁盘空间。它可以启动、暂停和节流;当您改变操作的状态时,就立刻会见到收益。例如,可以在晚上运行重组,在白天对它进行节流或停止它。当重组停止时,访问表的应用程序会立即享受到重组带来的好处:这是真正的可用性。

    DB2 9.5 将 TSA 高可用性技术集成在 DB2 中。可以利用这些服务将两个数据服务器设置成高可用性集群,甚至自动执行 HADR 解决方案的故障转移。除此之外,DB2 9.5 安装程序可以自动配置高可用性集群。还有一个新的框架,它的前端是新的 DB2 High Availability Instance Configuration Utility(db2haicu)。这个框架提供一个基于文本的界面,可以使用它在集群环境中配置和管理高可用性数据库。现在,DB2 可以通过查询系统收集关于数据库实例、集群环境和集群管理器的信息,还可以让整个集群在发生变化时保持同步。

  • pureXML for DB2 Express它允许在 DB2 Express 数据库中创建 pureXML 列和使用相关的 XML 服务,比如 XML 模式检验和注册服务、基于路径的索引服务、XQuery 服务等。注意,DB2 Personal、DB2 Express-C 和 DB2 Express-C FTL 免费提供这个特性。

    尽管 DB2 XML Extender 的效率和功能不及 DB2 9 中的 pureXML 服务,但是 DB2 9.5 中仍然提供它,可以使用它对 XML 进行持久化。但是您应该知道,XML Extender 存储 XML 的方式与其他关系数据库产品相同:即把 XML 数据分解成关系格式,或者将整个 XML 文档放进一个大对象中。无论您使用哪个厂商的数据库,在使用他们的技术对 XML 数据进行持久化时,都需要在性能、灵活性等方面进行权衡。

    DB2 9.5 中的 pureXML 特性提供的服务不会在存储 XML 数据时损害灵活性(灵活性是设计 XML 的目的)和性能(性能是用数据服务器存储 XML 的原因之一)。对于几乎所有基于 XML 的应用程序,强烈建议使用这个特性。

  • Homogeneous Federation for DB2 Express :它允许跨 DB2 系列成员创建别名。这样,应用程序就能够使用驻留在不同平台上的 DB2 表,而不用考虑它们的位置。例如,可以使用这个特性对驻留在 DB2 for i5/OS 数据库中的数据和 DB2 for Linux on System z 中的数据执行联结。如果希望对非 IBM 数据源执行联邦操作,或者希望使用基于队列的复制,那么需要购买单独的 IBM Information Server 套件 中的产品。

许可和定价

DB2 Express 对于安装它的服务器有以下体系结构限制:

  • DB2 Express 要求整个数据服务器使用的内存不超过 4 GB。尽管有这个内存限制(用一个配置参数控制),但是可以在内存超过 4 GB 的服务器上安装 DB2 Express —— 这个限制是要求 DB2 数据服务器软件 使用的内存不超过 4 GB。例如,如果在一个有 8 GB 内存的服务器上安装两个数据库,那么可以在这两个数据库之间分配 4 GB 内存(即使它们在不同的实例中),但是物理服务器上所有实例和数据库的内存总和不能超过 4 GB。还要牢记一点:这个限制是软性实施的 —— 换句话说,由您负责确保数据服务器不超过这个限制,因为 DB2 Express 并不像 DB2 Express-C 和 DB2 Express-C FTL 那样硬性限制这个资源。
  • 只能在小于等于 200 VU 的服务器上安装 DB2 Express。例如,因为一个双核 x86 Intel 处理器的每个处理核心是 50 VU,所以在安装这个 DB2 版本的服务器上最多只能有两个双核 x86 Intel 处理器。
  • 这个 DB2 版本不支持子容量许可。

可以按照以下两种方式之一为 DB2 Express 数据服务器购买许可证:

  • 按照安装 DB2 Express 软件的服务器的 价值单元 总数购买许可证。这种许可证允许任意数量的用户使用任何方法访问 DB2 Express 数据服务器。
  • 按照访问 DB2 Express 数据服务器的授权用户总数购买许可证。授权用户是一个个体(在某些情况下,只要不代表其他用户发挥作用,它可以是一个应用程序或装置),它具有在公司内外的特定身份。由于最终用户是已知的(必须针对许可明确识别用户),因此也可以通过因特网使用这些许可证(比如在线银行应用程序)。授权用户许可证拥有完全的权利;不需要像以前的 DB2 版本中那样另外使用服务器许可证。请注意特定身份 这个词。如果使用多路复用或连接集中软件,那么需要首先完全识别这些用户,然后才能将这些软件应用于连接。

    对于访问数据服务器的每个用户,都需要获得一个授权用户许可证;但是,无论有多少用户访问数据服务器,至少要购买最低数量 的授权用户许可证:每个 DB2 Express 服务器要求最少 5 个授权用户许可证。

    授权用户许可证不能随工作转移而转移(但是可以由于雇用关系转移而转移),它们只对特定的一个服务器有效。例如,如果有 25 个用户需要访问两个单独的 DB2 Express 数据服务器,那么需要购买 50 个授权用户许可证:2 个服务器 x 每个服务器 25 个授权用户。即使这些用户中只有 12 个用户同时连接数据服务器,仍然必须为每个数据服务器购买所有 25 个用户的许可证(所以这个示例需要 50 个授权用户许可证)。如果有一个 DB2 Express 数据服务器且只有 3 个用户,那么仍然需要购买 5 个 DB2 Express 授权用户许可证,这样才能满足这个 DB2 版本对最低用户数的要求。

DB2 9.5 中的变更

DB2 9.5 并没有改变 DB2 Express 的定价或许可规则。但是,从 DB2 9.5 开始,取消了 DB2 Express 可用的一些 Feature Pack,只保留前一节中提到的那些 Feature Pack。具体地说,不能为 DB2 Express 9.5 购买 Workload Management 和 Performance Optimization Feature Packs,不能在这个 DB2 版本中使用其中包含的特性。

请考虑一下……

DB2 Express 是一个入门级的 DB2 数据服务器,对于不需要超过 4 GB 内存和 200 VU 处理能力的工作负载,应该考虑使用这个版本。这个版本不适合那些需要并行性或 MDC 表等可伸缩性特性的应用程序,因为基本 DB2 Express 服务器不提供这些特性,也无法通过 Feature Pack 获得它们。

在 DB2 Express 上可以实现的有趣功能

Sage 是世界上最著名的端到端软件提供商之一,运行 SMB 等业务。在默认情况下,他们的 ACCPAC 应用程序在 DB2 Express 上运行。Craig Downing(负责产品管理的副总裁)指出,“DB2 清楚地表明 IBM 的产品很适合 SMB 市场。尤其是,管理任务的自动化使中小型企业能够获得很高的数据可靠性,同时不需要在管理方面做很多工作。”

一家为北美的 280 万中小用户(和全世界的 450 万用户)服务的公司选用 DB2 Express 来处理他们最流行的应用程序之一,因为 DB2 Express 容易使用。这真的很酷!





回页首


DB2 Workgroup Server Edition……它比 DB2 Express 大一点儿,但并不悬殊

DB2 Workgroup Server Edition(DB2 Workgroup)是提供与 DB2 Express 数据服务器相同的功能的 DB2 数据服务器,但它是为需求更高的工作负载设计的,支持更多内存、更大处理能力和更高的可用性,并提供许多平台部署选项。与 DB2 Express 不同(DB2 Express 只能在 Windows、基于 x86 的 Solaris 和 Linux 操作系统上运行),在 DB2 支持的所有分布式平台上都可以运行这个 DB2 版本,即:LinuxWindowsAIXSolarisHP-UX(前面的链接提供最新的平台支持信息)。

DB2 Workgroup 在功能方面与 DB2 Express 相似;但是从 DB2 9.5 开始,它免费包含 High Availability Feature Pack 的所有组件(在 DB2 Workgroup 9 中,这是付费组件)。具体地说,从 DB2 9.5 开始,基本 DB2 Workgroup 版本包含 HADR、在线表重组和集成的 TSA 高可用性软件。除此之外,DB2 Express 和 DB2 Workgroup 在 RAM 和价值单元限制方面也不同;与 DB2 Express 相比,可以用来丰富 DB2 Workgroup 数据服务器的 Feature Pack 更多。

DB2 Workgroup 数据服务器的 Feature Pack

与 DB2 Express 一样,可以通过购买 Feature Packs,用许多企业服务扩展 DB2 Workgroup。DB2 Workgroup 可用的 Feature Pack 比 DB2 Express 多,所以 DB2 Workgroup 可以提供比 DB2 Express 更多的附加功能和选项。

  • Query Optimization Feature for DB2 Workgroup这个 Feature Pack 以前在 DB2 9 中称为 Performance Optimization Feature Pack,它支持在 DB2 Workgroup 数据服务器上使用物化查询表(MQT)、多维聚簇(MDC)表和查询并行性。所有这些特性都用来提供出色的性能(尤其适合商业智能化 [BI] 应用程序),它们是基本 DB2 Enterprise 版本的组成部分。在 DB2 Express 中不能使用这个 Feature Pack。

    DB2 提供许多高性能对象和功能,可以将处理能力提高到每分钟处理数十万个用户和数百万个事务。这个 Feature Pack 支持在 DB2 Workgroup 数据服务器中创建 MDC 表和 MQT。这些对象可以为 DB2 上运行的应用程序提供很大的好处。实际上,我认为这个 Feature Pack 包含了对于任何高性能 BI 应用程序最重要的一些组件。(如果将 DB2 用于 BI 应用程序,就一定要了解 MDC 和 MQT 是什么。)如果您希望大大提高在 DB2 Workgroup 和小型服务器上运行的应用程序的性能,那么这个 Feature Pack 正好提供了您需要的组件。

  • pureXML for Workgroup:为 DB2 Workgroup 提供与 pureXML Feature Pack for DB2 Express 相同的 XML 特性和功能。
  • Homogeneous Federation DB2 Workgroup:为 DB2 Workgroup 提供与 Homogeneous Federation DB2 Express 相同的同构联邦特性和功能。

许可和定价

在核心功能方面,DB2 Workgroup 和 DB2 Express 差不多是相同的产品,只是在 DB2 9.5 中 DB2 Workgroup 免费包含 High Availability Feature Pack。在许可方面,这两个 DB2 版本的差异在于体系结构限制:

  • DB2 Workgroup 数据服务器限制为 16 GB 内存。由您负责用与内存相关的配置参数管理这个限制。这意味着可以在内存超过 16 GB 的服务器上安装 DB2 Workgroup —— 这个限制是要求 DB2 数据服务器软件 使用的内存不超过 16 GB。例如,如果在一个有 32 GB 内存的服务器上安装两个数据库,那么可以在这两个数据库之间分配 16 GB 内存(即使它们在不同的实例中),但是物理服务器上所有实例和数据库的内存总和不能超过 16 GB。
  • 只能在小于等于 400 VU 的服务器上安装 DB2 Workgroup。
  • 在 DB2 Workgroup 软件中不能使用子容量许可。

可以按照以下两种方式之一为 DB2 Workgroup 购买许可证:

  • 按照安装 DB2 Workgroup 软件的服务器的 价值单元 总数购买许可证。这种许可证允许任意数量的用户使用任何方法访问 DB2 Workgroup 数据服务器。
  • 按照访问 DB2 Workgroup 数据服务器的授权用户总数购买许可证。授权用户是一个个体(在某些情况下,只要不代表其他用户发挥作用,它可以是一个应用程序或装置),它具有在公司内外的特定身份。由于最终用户是已知的(必须针对许可明确识别用户),因此也可以通过因特网使用这些许可证(比如在线银行应用程序);不需要像以前的 DB2 版本中那样另外使用服务器许可证。请注意特定身份 这个词。如果使用多路复用或连接集中软件,那么需要首先完全识别这些用户,然后才能将这些软件应用于连接。

    对于访问数据库的每个用户,都需要获得一个授权用户许可证;但是,无论有多少用户访问数据服务器,至少要购买最低数量 的授权用户许可证:每个 DB2 Workgroup 服务器要求最少 5 个授权用户许可证。

    授权用户许可证不能随工作转移而转移(但是可以由于雇用关系转移而转移),它们只对特定的一个服务器有效。例如,如果有 25 个用户需要访问两个单独的 DB2 Workgroup 数据服务器,那么需要购买 50 个授权用户许可证:2 个服务器 x 每个服务器 25 个授权用户。即使这些用户中只有 12 个用户同时连接数据服务器,仍然必须为每个数据服务器购买所有 25 个用户的许可证(所以这个示例需要 50 个授权用户许可证)。如果有一个 DB2 Workgroup 数据服务器且只有 3 个用户,那么仍然需要购买 5 个授权用户许可证,这样才能满足这个版本对最低用户数的要求。

DB2 9.5 中的变更

DB2 9.5 在许可和打包方式方面做了许多重要(且具有积极意义)的变更。在许可方面,DB2 Workgroup 9.5 的 RAM 限制针对数据服务器,而不是像 DB2 9 中那样针对物理服务器。这使公司能够在更大的服务器上运行 DB2 Workgroup,使这个 DB2 版本更适合参与多应用程序整合。注意,DB2 9.5 的 RAM 限制并没有变,只是改变了计算方法。很简单,从 DB2 9.5 开始,如果服务器不超过 400 VU 而且服务器上有 32 GB 的 RAM,就可以使用 DB2 Workgroup(只要 DB2 只使用 16 GB 的 RAM);而在 DB2 9 中就不能这么做。

DB2 9.5 中的另一个重要变更是,High Availability Feature Pack 不再作为 DB2 Workgroup 的可选 Feature Pack。那么,它放在哪里了?它免费包含在这个产品中!从 DB2 9.5 开始,HADR、在线表重组和集成的 TSA 集群软件等特性包含在 DB2 Workgroup 中。当然,如果将两个 DB2 Workgroup 服务器设置成高可用性集群,那么仍然必须根据备用服务器的角色为它购买许可证。注意,DB2 9.5 将描述备用服务器的术语从 active/passive 改为 hot/warm/cold,还引入了一些新的许可规则。正如前面提到的,我的文章 “为高可用性环境中的分布式 DB2 9.5 服务器颁发许可” 讨论了这些细节;同样,这些变更都有积极意义。

除了在 DB2 Workgroup 9.5 中免费包含 High Availability Feature Pack 之外,对于这个 DB2 版本,还取消了一些 Feature Pack,一些 Feature Pack 改了名字。Workload Management Feature Pack 不再作为这个版本的可选 Feature Pack。这意味着这个 DB2 版本不能再使用 DB2 Query Patroller、DB2 Governor 和替代它们的 Workload Manager。

最后,在 DB2 9 中,可以为 DB2 Workgroup 购买 DB2 Performance Optizmiation Feature Pack。这个 Feature Pack 包含 MDC、MQT 和并行性。DB2 Workgroup 现在仍然可以使用这个 Feature Pack,但是它已经改名为 Query Optizmization Feature Pack;但是,它提供的组件是相同的。改变它的名称是为了避免混淆,因为 DB2 Enterprise 可用的一个 Feature Pack 使用同样的名称,但是包含不同的组件。

请考虑一下……

DB2 Workgroup 可以在企业中扮演许多角色。如果中小型企业需要完全成熟的可伸缩且高可用的关系数据库,但是数据服务器不需要使用 16 GB 以上的内存或超过 400 VU 的处理能力,那么很适合使用这个版本。与 DB2 Express 相比,DB2 Workgroup 尤其适合业务线应用程序需要小型 “silo” 服务器的企业环境,也适合需要为低事务吞吐量应用程序提供企业服务的部门。

在 DB2 Workgroup 上可以实现的有趣功能

TMW Systems Maddocks 为货运公司 TruckMate 开发了先进的物流应用程序。两年前,他们在评估了 Oracle 和 SQL Server 之后,最终选择了 DB2。他们的软件支持着 IBM Canada 的大多数硬件运输和 Hudson's Bay(加拿大最大的零售商)的产品运输,而且一些 北美最成功的运输公司 也使用他们的软件。Bob Maddocks(Maddocks 的 CEO,他编写了自己的递归式 SQL)充分肯定了他们通过 DB2 Workgroup 取得的价值(他们的应用程序也可以在 DB2 Express 上运行),他指出,“我们既可以为每天只接到 10 张货运订单的小型运输公司服务,也可以为每天处理 10,000 张货运订单的大公司服务,这提供了对于我们非常重要的可伸缩性……” 而且 “DB2 中的自主特性帮助我们节省了 30%-35% 的支持成本……”。DB2 Workgroup 提供了可伸缩性、低成本、易用性、自主特性带来的成本节约,并且确保当地的食品店总是能够提供 McCains 生产的法式薯片(我女儿的最爱)。这真的很酷!





回页首


DB2 Enterprise Server Edition……无可匹敌的可伸缩性、弹性和灵活性

DB2 Enterprise Server Edition(DB2 Enterprise)是 IBM 功能最齐全的支持 Web 的客户机/服务器数据服务器。在 DB2 支持的所有分布式平台上都可以运行这个 DB2 版本,即:LinuxWindowsAIXSolarisHP-UX(前面的链接提供最新的平台支持信息)。

DB2 Enterprise 旨在用作大中型的部门服务器,在所有 DB2 9 版本中它提供的特性和服务最为全面。例如,这个 DB2 版本免费提供表分区、HADR、并行性、MDC、MQT、TSA 等服务,而这些特性对于 DB2 Express 和 DB2 Workgroup 需要通过 Feature Pack 另外购买。除此之外,DB2 Enterprise 还具备它特有的服务。例如,DB2 Enterprise 能够使用表分区服务对一台服务器中的数据进行分区,这个服务只能在 DB2 Enterprise 上使用。这个功能包含在基本 DB2 Enterprise 版本中,但是对于 DB2 Express 或 DB2 Workgroup 都不可用,甚至无法通过 Feature Pack 购买。

这个 DB2 版本对于使用的内存数量没有限制(实际上,最好的 DB2 9 TPC-C 结果使用差不多 2 TB 内存作为缓冲池 —— 这个内存量甚至超过了许多公司拥有的数据总量)。对于运行这个数据服务器的底层服务器,也没有最大 价值单元 限制。

DB2 Enterprise 还有一组 Feature Pack,它们可以用更多的数据服务扩展企业解决方案。

DB2 Enterprise 数据服务器的 Feature Pack

DB2 Enterprise 有自己的一组 Feature Packs,它们为 DB2 Enterprise 提供高级数据服务,可以按照与 DB2 Express 和 DB2 Workgroup 数据服务器相同的方式使用这些 Feature Pack。因为 DB2 Express 和 DB2 Workgroup 的 Feature Pack 提供的许多服务免费包含在 DB2 Enterprise 中,所以这个 DB2 版本可用的大多数 Feature Pack 与那两个版本不一样。

DB2 Enterprise 的 Feature Pack 必须采用与 DB2 Enterprise 数据服务器相同的许可方式,也就是按照授权用户或者按照价值单元购买许可证。但是,DB2 Storage Optimization Feature Pack 不能使用授权用户许可证,必须按照价值单元购买许可证。这意味着,如果要购买这个 Feature Pack,那么 DB2 Enterprise 也必须使用价值单元许可证。

在 DB2 Enterprise 中可用的 Feature Pack 有:

  • Performance Optimization Feature for DB2 Enterprise: 它提供工作负载管理服务和一套用于 DB2 数据服务器性能调优的报告和工具。

    DB2 9.5 引入了一组全新的工作负载管理服务,它们替代了以前由 DB2 Query Patroller 和 DB2 Governor 组成的体系结构;这些服务统称为 Extreme Workload Manager 或 DB2 Workload Manager(DB2 WLM)。DB2 9.5 中的这个新体系结构允许显式地控制执行的工作的 CPU 使用,探测并防止所谓的 run awayrogue 查询,以许多不同的方式密切监视数据库活动。

    DB2 WLM 可以替代以 DB2 Query Patroller 和 DB2 Governor 为中心的 DB2 9 工作负载管理解决方案。在 DB2 9.5 中仍然完全支持这两个产品,并可以在 DB2 9.5 WLM 环境中使用它们;但是,它们将随着时间的推移逐渐退出,最终将被 DB2 WLM 取代。

    Performance Optizmiation Feature Pack 还包含 DB2 Performance Expert。DB2 Performance Expert 简化了性能管理和调优工作。它为 DBA 提供 DB2 数据服务器的一致性视图,包含关于实例、子系统、数据库和应用程序的信息。例如,它提供一组预定义的报告,可以显示 DB2 中的资源不足和异常情况、锁冲突和死锁以及导致高工作负载的应用程序和 SQL 语句。它还包含一组关于 SQL、数据库和缓冲池活动的详细报告,并进行趋势分析和假设测试,从而支持性能优化等任务。这个 Feature Pack 中的 DB2 Performance Expert 版本只能供在 Linux、UNIX 和 Windows 上运行的 DB2 数据服务器使用,而在这个 Feature Pack 之外另外购买的 DB2 Performance Expert 工具可以在所有 DB2 系列产品上使用。

  • pureXML for DB2 Enterprise:为 DB2 Enterprise 提供与 pureXML Feature Pack for DB2 Express 相同的 XML 特性和功能。
  • Homogeneous Federation DB2 Enterprise:为 DB2 Enterprise 提供与 Homogeneous Federation DB2 Express 相同的同构联邦特性和功能。
  • Advanced Access Control for DB2 Enterprise它为 DB2 Enterprise 数据服务器中存储的数据提供基于标签的访问控制(LBAC)保护服务。通过使用这个特性,可以在表列和行级别控制用户和组拥有的读写访问权。LBAC 通过在表对象上附加安全标签来控制对它们的访问。试图访问对象的用户必须具有安全标签。如果安全标签匹配,就允许访问;如果不匹配,就拒绝访问并隐藏数据。

    Advanced Access Control 特性提供一个安全框架,可以围绕业务实体、数组或其组合的层次化表示组织这个框架。除此之外,还可以使用 LBAC 在文档级控制对 pureXML 列中存储的 XML 文档的访问。

  • Geodetic Data Management Feature它提供考虑到地球曲率的空间分析(这是它与所有 DB2 9 版本中的免费 Spatial Extender 之间的主要差异)。Geodetic Data Management Feature 用于那些需要把地球表面投影所造成的误差减至最低的高级分析,它对于国防应用程序、天气应用程序等尤其有用。

    例如,在使用 DB2 Spatial Extender 时,可以用不同的投影(例如,Mercator 投影)使地球 “平面化”,然后在应用程序中容忍或考虑误差。如果用这种方法定位打 911 报警电话的人的住宅,那么不会产生什么问题(10 英尺的误差不会造成什么损害)。但是,像导弹防御系统这样的国家安全应用程序需要更高的精度,无法容忍将地球表面 “平面化” 为 LAT/LONG 坐标所导致的误差。这正是 Geodetic Data Management Feature 可以发挥作用的领域。

    通俗地讲,如果诸如 “格陵兰岛是非洲的 1/14”(这与我在上小学时看到的地图并不符合)这样的误差会给应用程序带来问题,那么这个特性正好适合您。

  • Mobility on Demand for Enterprise :它以低价为 DB2 Enterprise 服务器提供 DB2 Everyplace Enterprise 的组件。通过使用这个特性,可以把企业数据扩展到数量不限的移动设备上(只要这些设备能够与数据服务器进行数据同步)。
  • DB2 Storage Optimization Feature for DB2 Enterprise :它提供的存储压缩服务可以用来优化数据的性能和内存占用量。这个 Feature Pack 由 Row Level Compression 和 Backup Compression 服务组成。

    Row Level Compression 服务是在 DB2 9 中首次引入的,它给数据库行业带来了很大的震撼。在 DB2 9.5 中,它们得到了扩展,支持自主的词典创建。这些服务提供从磁盘到缓冲池的行级压缩,可以显著减少磁盘空间占用(内部测试表明,这些服务节约的磁盘空间平均为大约 65%),并提高出现 I/O 瓶颈的系统的性能(数据仓库系统的瓶颈都在 I/O 方面;毕竟,CPU 瓶颈是很容易消除的)。但是,不只如此。

    请考虑一下压缩可能带来的其他潜在好处。相信我,压缩的好处绝不仅仅是节约磁盘空间。例如,在 DBA 必须负责的备份任务方面,压缩不但使备份更小,而且备份过程会更快(因为要备份的数据更少)。再想想 Q/A 和测试环境。如果数据在磁盘 内存缓冲区中都是压缩的,那么就可以在这些缓冲区中获得更多数据。这不仅意味着性能可能会提高,而且 RUNSTATS 和 REORG 等维护操作也可以更快地运行。另外,考虑到 DB2 9 可以在一个数据页面上支持超过 2,000 个数据行(DB2 8 限制为 255 个数据行),您已经拥有了一个出色的消除 I/O 瓶颈的方法。最后,考虑 HVAC 给存储等方面带来的好处。综合考虑所有这些因素之后,您就会相信对数据进行压缩的好处绝不仅仅是节约磁盘空间,它将会全面改善系统!

    那么,DB2 9 中的这些压缩服务有哪些与众不同之处呢?InfoWorld 上提供的访谈对 DB2 9 做了以下评论“DB2 中新的行级压缩是我最喜欢的特性之一。它实际上是表级压缩,可以直接节省 45% 到 75% 的磁盘空间……如果要我选出比其他任何数据库都先进的 DB2 特性,那么这个特性肯定是其中之一,因为它对大多数客户都很有帮助。我想 Oracle 和 Microsoft 正在努力将这一特性引入市场。”

    顾名思义,Backup Compression 服务可以对数据库备份进行压缩。DB2 中的数据库备份框架基于一个开放的可插入接口,它允许使用 DB2 附带的默认压缩算法,也可以使用您自己的算法。使用的压缩算法嵌入在备份映像中,所以在发生灾难后恢复数据时,可以在另一个服务器上恢复数据。

许可和定价

可以按照以下两种方式之一为 DB2 Enterprise 购买许可证:

  • 按照运行这个软件的服务器的 价值单元 总数购买许可证。这种许可证允许任意数量的用户使用任何方法访问 DB2 Enterprise 数据服务器。但是要注意,与 DB2 Express 和 DB2 Workgroup 不同,DB2 Enterprise 可以进行子容量定价。例如,可以在 System p 服务器上创建一个 LPAR,让它使用服务器上的一半价值单元,然后按照这些价值单元(而不是整个服务器的价值单元数)为 DB2 Enterprise 购买许可证。另外,可以按照 Dynamic LPAR(DLPAR)为 DB2 Enterprise 购买许可证,DLPAR 中的资源根据预定义的业务规则动态地移入和移出安装 DB2 的 LPAR。可以通过我的文章 “DB2 Universal Database 在双核心处理器和随需添加处理器上的许可授权” 了解如何在 LPAR 或 DLPAR 环境中为 DB2 购买许可证;尽管这篇文章根据内核数量进行讨论,而 IBM SWG 现在按照 VU 进行软件定价,但是判断许可需求的方法是相同的。
  • 按照访问 DB2 Enterprise 数据服务器的授权用户总数购买许可证。授权用户是一个个体(在某些情况下,只要不代表其他用户发挥作用,它可以是一个应用程序或装置),它具有在公司内外的特定身份。由于最终用户是已知的(必须针对许可明确识别用户),因此也可以通过因特网使用这些许可证(比如在线银行应用程序)。授权用户许可证拥有完全的权利;不需要像以前的 DB2 版本中那样另外使用服务器许可证。请注意特定身份 这个词。如果使用多路复用或连接集中软件,那么需要首先完全识别这些用户,然后才能将这些软件应用于连接。

    与 DB2 Express 和 DB2 Workgroup 一样,DB2 Enterprise 也有最低授权用户许可证数量要求。DB2 Express 和 DB2 Workgroup 要求为每个服务器至少购买 5 个授权用户许可证,而 DB2 Enterprise 要求为服务器上的每 100 VU 购买至少 25 个授权用户许可证。应该注意,对于每个服务器,都有一个授权用户许可证数量的 “平衡点”;在这个位置上按照 VU 为服务器购买许可证会更划算。

    例如,如果在一台基于 IBM Power 5 QCM 的 System p 服务器上运行 DB2 Enterprise,服务器有一个四核处理器,您至少需要购买 50 个用户许可证,因为这台服务器的 VU 总数是 200 VU(200 VU/ 100 VU = 2 x 25 授权用户)。如果在一台 Sun Niagara 服务器上运行 DB2 Enterprise,服务器有一个六核处理器,则至少要购买 50 个授权用户许可证,因为这台服务器的 VU 总数是 180 VU,当超过 100 VU 阈值时,VU 总数应该向上取整到 100 VU 的倍数。当然,如果使用 LPAR 技术,计算 DB2 许可证所用的 VU 数量就不一样了。

    授权用户许可证不能随工作转移而转移(但是可以由于雇用关系转移而转移),它们只对特定的一个服务器有效。例如,如果有 75 个用户需要访问两个单独的 DB2 Enterprise 数据服务器,那么需要购买 150 个授权用户许可证:2 个服务器 x 每个服务器 75 个授权用户 = 150(每个服务器 75 个)。但是,如果这两个服务器都有 4 个基于 Intel XEON 的双核处理器,那么需要购买最少 200 个授权用户许可证(每个服务器 100 个),因为 DB2 Enterprise 的最低授权用户数量要求是每 100 VU 25 个用户:((( 4 个插槽 x 2 个核心 = 8 个核心 ) x 每个核心 50 VU = 400 VU)/100 VU = 4) x 25 个授权用户 = 100 x 2 个服务器 = 200 个授权用户。

DB2 9.5 中的变更

Database Partitioning Feature(DPF) 不再作为 DB2 Enterprise 的 Feature Pack。这个特性没有取消,但是因为它适用于数据仓库,所以被包含在所有 DB2 Warehouse 版本中。

请考虑一下……

如果应用程序需要无限制的灵活性(例如,使用表分区)和可伸缩性(例如,没有 VU 或 RAM 限制),那么应该认真考虑使用 DB2 Enterprise。如果需要高级的扩展服务,例如高级的安全控制服务(比如基于标签的访问控制)、存储优化服务(比如压缩)等,那么也应该考虑使用 DB2 Enterprise。DB2 Enterprise 对于容量没有限制,您只需考虑优化资源平衡,而且它提供大量特性。

在 DB2 Enterprise 上可以实现的有趣功能

Daimler(以前称为 Daimler Chrysler)是位于美国密歇根州 Auburn Hills 和德国斯图加特的一家汽车公司,它通过销售 470 万辆汽车获得超过 1920 亿美元的收入(它是世界第三大汽车制造商),在世界各地有超过 35 万名员工。Daimler Chrysler 拥有的品牌包括:Mercedes-Benz、Chrysler、Jeep、Dodge 和 Freightliner 等。Daimler Chrysler 是真正的大型企业。

Daimler Chrysler 希望实现一个数据平台,让他们能够对各种业务情况的变化做出反应,比如改变客户偏好和交货日期,并提供内置的动态响应方法 —— 他们选择 DB2 作为这个平台的组成部分。Dr. Seshu Bhagavathula(Daimler Chrysler 的技术战略主管)指出,“我们用 IBM 产品构建的解决方案为我们提供了一种灵活且高效的方法,帮助我们打破公司中的信息壁垒,为我们向更敏捷更具响应性的公司发展奠定了基础……”

用 DB2 产品打破了信息壁垒,Daimler 的管理层对这个数据平台的效果非常满意。

Bang & Olufsen(B&O) 是当今世界上最著名的高端音频设备生产商之一。这家公司由 Peter Bang 和 Sven Olufsen 于 1925 年建立,他们不但因其工程质量和声音质量而出名,而且他们的产品也非常美观。B&O 将他们的 SAP 实现迁移到了 DB2。Peter Munk(B&O 的 IT 负责人)指出,“使用了 DB2 之后,我们再没有遇到性能问题,使我们能够集中精力开发业务所需的东西……”

毫无疑问,世界上最酷的立体声设备公司正在使用 DB2……这真的很酷!





回页首


DB2 Data Stream Edition

DB2 Data Stream Edition(DB2 Data Stream,也称为 DB2 Real Time Insight) 是一种综合的服务、特性和产品组合,其中包含 DB2 Enterprise、Data Partitioning Feature 和 Real-Time Insight Feature。它提供一个快速且高效的内存数据服务器,并包含处理实时数据流的扩展服务。

是把它称为一个 DB2 版本,还是一个 DB2 特性?对于这个问题,我犹豫了很久。因为它的核心实际上是 Real-Time Insight Feature(这个特性只能通过这个产品使用)。我决定把它称为一个版本,因为它实际上是针对一种特殊应用程序类型的解决方案。

越来越多的客户需要捕捉并存储由电子源生成的大量实时 数据,比如市场数据 feed、GPS 发送器生成的地理位置、RFID 标记生成的产品 ID 等等。设计 DB2 Data Stream 就是为了满足这种需求。这些数据通常很小,但是量(消息数量)非常庞大。例如,市场数据提要常常出现每秒超过 100,000 个事务的情况!

促使为这种应用程序购买 DB2 Data Stream 的主要业务因素是,它们是需要严格优化和加强的应用程序。例如,军事、供应链(旅行推销员问题)、技术公平贸易战略、后勤计划等领域都可能需要处理大量的流数据。用于处理风险、国内贸易、人身安全或反恐的应用程序也是这种应用程序的好例子。

DB2 Data Stream 为处理各种消息提供了很大的灵活性,它为长期持久化和后继过程中的操作提供服务,对后继的分布操作进行筛选,比如删除、可行的纠正或否决等操作。这个产品的细节超出了本文的范围,如果您需要这种解决方案,请通过 IBM 销售代表和 IBM 业务伙伴了解更多信息。





回页首


仅针对开发人员的提示

对于应用程序开发而言,可使用名为 Database Enterprise Developer's Edition(DEDE)的特殊产品。这是一个降价产品,它使应用程序开发人员可以访问大多数 DB2 特性和版本,以及一组 Informix 产品和 DB2 Connect。DEDE 仅限于应用程序的开发、评估、演示和测试用途。DEDE 是按每个开发人员发放许可证的。如果您公司的开发人员不是很多,那么在应用程序开发过程中使用 DEDE 可能是更经济的方法。





回页首


结束语

如您所见,DB2 不仅运行在许多平台上,而且有许多打包选项,这些选项允许您为自己的企业选择合适的版本。DB2 9.5 引入了更灵活的部署选项,可以满足不同的数据服务需求。这些选项与许多新的服务相配合,不但加快了 DB2 解决方案产生效益的速度,而且使 DB2 成为当今最有效率的数据库管理系统。

在各个 DB2 版本之间可以进行无缝迁移,这使您在业务增长时仍能利用原先的 DB2 投资。无论您是通过因特网跟踪销售情况的 SMB,还是移动解决方案供应商,或是需要设法分析销售数据(为了将合适的产品在合适的时间提供给合适的客户)的 Fortune 500 企业,都必定有一个 DB2 版本适合您!



参考资料

学习

http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0611zikopoulos/index.html
 

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广