哪个 DB2 9.7 发行版适合您?

红薯 发布于 2009/12/21 14:27
阅读 1K+
收藏 0
DB2

通过细节了解 DB2 9.7 for Linux, UNIX, and Windows 各个版本的独特之处。作者在本文中介绍了每个版本的规范、许可注意事项、贯穿 DB2 9.7 发行周期的历史变化,并提到客户使用 DB2 带来的趣事。这篇流行的文章根据 Fix Pack 中声明的版本许可变化进行更新。本文还讨论了 DB2 9.8 发行版的一些细节,这个版本引入了新的 DB2 pureScale 特性。

简介

信 息管理软件是企业计算的核心。企业需要访问广泛的信息,比如 XML、消息队列、文档、流视频和其他富媒体类型。随需应变的发展趋势使得持续可用性成为必要的条件,并且促成了事务、商业智能、业务绩效管理和内容管理 应用程序的联合,从而使企业能够整合业务运营和流程,实现随需应变式的运营。

IBM Information Management 软件产品组合为您提供您所需的平台,让您能够通过一组丰富的服务按需提供信息。这些服务可用于支持和查询数据(结构化、半结构化和非结构化数据)、整合数 据、提供数据实体解决方案、主数据管理、联合、内容管理和大量运行时分析功能。从总体上看待所有这些服务时,它们被称为信息即服务(Information as a Service)。IBM 提供一个构建在这些核心服务之上的、以行业为中心的、有针对性的丰富框架,从而使企业能够系统地将它们的数据资产转换成业务的战略核心支柱;所有这些最佳实践统称为 Information Agenda

Information Management 产品组合的核心是分布式 (Linux, UNIX, and Windows) DB2 数据库服务器,这也是本文的重点内容。注意,本文仅讨论运行在分布式平台和普遍使用的平台之上的 DB2 版本。要了解关于整个 DB2 产品组合的信息,请访问 Information Management Software Web 站点或每个产品的 Web 站点:DB2 for z/OSDB2 for i(以前曾称为 DB2 for i5/OS,在此之前称为 DB2 for AS/400)。

DB2 还是 InfoSphere WarehouseInfoSphere Balanced Warehouse 版本的核心,同时也是 IBM Smart Anlaytics System 的核心;事实上,所有这些产品(甚至针对中小型企业的产品)都构建在本文讨论的 DB2 Enterprise 之上。本文没有讨论这些产品,因为它们的某些服务与本文的主题 —— 核心 DB2 数据库的关系不大。

做出使用 DB2 的决策并不难;不过,DB2 有好几个版本(各自的许可不一样),每个版本满足不同的市场需求。从 Palmtop 到 Teraflop,总有一个 DB2 版本适合您!

对 于每个版本的 DB2,我都写了一篇与本文类似的文章,旨在帮助您如何根据业务需求选择合适的 DB2 版本。由于临时的更改会影响到版本的发行,所以本文只是作为详细描述许可和产品变化的一个参考。因此,阅读本文时务必注意发行时间和版本。在本文中,对版 本的特性、许可规则等的描述都是最新的。在每个版本描述下面通常都包含一个变更记录,您可以通过它查看发行版周期中的变化。例如,本文讨论 DB2 9.7。在 Fix Pack 1 发行之后,任何打包方式或许可变化都出现在本文中,但还将添加一个部分来明确描述常用的 DB2 9.7 版本和随后的 Fix Packs 之间的变化。

注意:在本文中,除非特别注明,词语服务器 既可以表示用于运行 DB2 软件的物理服务器,又可以表示 受 IBM 定价支持的虚拟会话(比如 VMWare 和 LPAR 等等)。

与客户交谈的时候,他们通常提出许多高可用性许可问题,或比较 DB2 的不同版本的问题。要详细了解这些主题并且获得更多信息,我撰写的其他文章可能有帮助:

跨平台的 DB2

为 您的工作负载选择 DB2 版本时,您首先要理解的是,除了 DB2 Everyplace® 和 Apache Derby(其 SQL API 完全与 DB2 兼容)之外,每个 DB2 版本在所有分布式平台上都使用相同的代码库。DB2 在所有 IBM 服务器上都支持 Linux:POWER(以前称为 System i 和 System p)、System z® 和 System x®:在所有这些平台上的 DB2 都是分布式版本。例如,DB2 for Linux on System z 与在基于 Intel 和 AMD 的工作站上的 DB2 采用的代码库和许可是相同的。这意味着不需要 DB2 Connect 就可以访问 DB2 for Linux on System z 数据,尽管该 DB2 安装在 System z 服务器上。(如果您在这个 System z 服务器上连接到 DB2 for z/OS 数据库,则需要 DB2 Connect;这里的不同之处是运行在 System z Integrated Facility for Linux (IFL) 之上的 DB2 for Linux 是 DB2 的分布式版本)。

通用的代码库提供可移植性,并确保在需要扩展 DB2 解决方案时可以无缝地完成,而不需要考虑任何迁移问题;因为 DB2 家族的 SQL API 中大约有 95% 是通用的, 所以在 DB2 家族产品中进行迁移也很容易。为了进一步提升 DB2 家族产品的价值,所有 DB2 版本都可以在整个 IBM 关系数据库产品组合中使用。这允许您编写这样一个 SQL 语句,它可以透明地将来自 DB2 on Windows 或 DB2 for z/OS,或 Informix(您可以想到的任意组合)的数据联合起来。此外,您还可以添加 IBM InfoSphere Information Server 软件,通过扩展 DB2 SQL API 来透明地访问非 IBM 关系数据库(比如 Oracle 和 SQL Server 等)并将非关系数据资源(比如 XML 流、电子数据表、消息队列、VSAM 和 IMS 等)物化为关系表,从而解决跨供应商信息集成问题并真正实现企业级的通用数据模型。

除了 SQL API 之外,IBM DB2 还有其他兼容性。例如,有一个通用的 Data Web Services:访问 IBM 数据库服务器的新方式 —— 构建 Web 服务 允许您通过简单的单击操作将业务逻辑放入到 Service Oriented Architecture (SOA) 框架中。事实上,这个框架名为 IBM Data Web Services,它不仅支持 Informix 服务器,甚至可用于更低版本的 Informix 或 DB2(在任意平台上,包括 i 和 z/OS)。真了不起!

有许多跨 IBM Data Server 特性都打包到每个版本的 DB2 中。例如,所有 IBM 关系数据库都共享一个通用的 API 来使用 SQL。例如,随 DB2 for z/OS 附带的 JDBC 驱动程序与随 DB2 for Windows 附带的一样。当您考虑到每天有数十亿美元依赖于这个驱动程序时,您就知道它是一个健壮的驱动程序。此外,还有一个 选择适合自己的 DB2 9.5 客户机连通性选项;如果您连接到 DB2 for z/OS、DB2 for AIX 或 Informix,您仅需安装一个客户端。您可以通过阅读 "Which DB2 9.7 client connectivity option is right for you?" 更多地了解这个新的通用客户端。例如,您以前是否知道仅需要安装许可密匙就可以从 DB2 客户端迁移到 DB2 Connect Personal Edition?如果不知道,请阅读该文章获取出色的技巧。

DB2 9.7 发行版构建在最初的 Data Studio 工具集之上(它实际上是可以 免费下载 的 DB2 管理工具),该工具集是对 IBM Optim 品牌下的 退役的 Integrated Data Management (IDM) 产品和工具集 的延续。没有出现 DB2 这个称呼并不是偶然的;IBM Optim 工具产品组合为 IBM 关系数据库之外的数据库提供一组丰富的工具平台,这些工具涉及应用程序生命周期的所有阶段(设计、部署、运营、优化和治理)。这可以节省运营资金和个人技 能培训资金,这些资金可用于解决其他问题,从而打破高成本数据库技能的限制。事实上,DB2 支持就地访问位于任意位置的数据。

另 外,用于应用程序开发和管理的工具(比如 Microsoft Visual Studio 集成)也是可以跨 IBM 数据库家族使用的。Optim pureQuery 和 Optim Database Administrator 等都支持 IBM 数据库之外的数据库(比如 Oracle)。在跨 IBM DB2 家族(大多数情况下还包括 Informix)进行应用程序开发、部署和管理等时,您将发现重用技术比以往都要简单、容易。

现在,DB2 9.7 为最常用的 Oracle Database PL/SQL 语法和数据类型等提供本机支持。事实上,有些公司的报告表明,它们的 PL/SQL 代码有 95% 以上不需更改应用程序就可在 DB2 9.7 上运行;另外,它们现在将应用程序从 Oracle 数据库迁移到 DB2 只需数天或数周,而不是过去的好几个月或好几年。综合考虑所有这些优势时,您将发现 DB2 已经帮助您摆脱了高成本成为主要限制的环境束缚。

如 果您因为硬件架构(例如,从 Intel 架构迁移到 POWER 架构)、操作系统(例如,从 Linux 迁移到 Windows)或编程架构(例如,从 .NET 迁移到 Java)的原因决定改变战略方向,您可以考虑使用 DB2。原因很简单,DB2 提供的信息平台能够在广度和深度上真正 满足您的环境需求。图 1 显示了跨受支持的分布式平台的 DB2 9.7 的架构:


图 1. 由于使用通用的代码库,DB2 支持跨分布式平台
由于使用通用的代码库,DB2 支持跨分布式平台

图 2 显示了 DB2 的不同版本。除了 DB2 Everyplace 和 Apache Derby 之外,您可以假设图 2 下面显示的 DB2 版本的功能、特性和优点都包含在后续的每个版本中,您可以放心地移动到 “版本链” 的更高级别。(注意,DB2 Express-C 实际上被看作是一个 而不是版本)。


图 2. 分布式 DB2 9 的产品线
分布式 DB2 9 的产品线

 

DB2 无处不在……威力四射

移动计算的真正强大之处不在于设备本身,而在于从其他源获取数据的能力。DB2 Everyplace (DB2e) 将 DB2 的威力引入到移动设备中,让它们利用 DB2 的功能与其他系统同步数据 —— 即将企业数据存放在移动平台中,然后通过移动设备从变化的位置(尤其是在偶尔连接的环境中)更新数据。

DB2e 不仅仅是一个移动计算平台而已。它是一个全面的综合环境,包含用于部署强大的 Information on Demand 应用程序所需的工具。DB2e 带有一个微型的 “指纹” 引擎(约 350 KB),该引擎包含许多安全特性(比如表级和线级加密,包括 SSL)和实现高性能所需的高级索引技术。它能顺利地运行在大量手持设备上,支持 Palm OS、Windows Mobile(和 Windows Mobile CE)、传统的 Windows 桌面平台、Symbian OS、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 主要用于需要嵌入式数据库或本地关系储存工具的应用程序。这些数据库或储存工具需要通过某些类型的应用程序(它们不直接与数据库相关)公开给终端用户,但 由于设备的原因要求其对资源的占用比较少。使用该版本构建的应用程序通常不需要与后台数据库进行同步;例如,每年使用邮寄的 CD 更新的移动部件目录。

DB2e Enterprise 许可为客户提供数量不受限制的 DB2e Database 引擎,这些引擎可以部署到公司的移动设备上,并且可以通过附带的 DB2 Everyplace Synchronization Server (DB2e Sync Server) 让移动设备支持远程数据同步;未受限制的 DB2e 数据库部署和同步服务是 DB2e Database 和 DB2e Enterprise 之间的主要区别。DB2e Sync Server 在运行 DB2e Database 和支持 JDBC 的后台服务器(例如 DB2、Oracle、Informix 和 SQL Server 等)的设备之间处理数据同步和配置文件管理。除此之外,还有一个特别的 DB2 家族同步适配器,它使用在 DB2 分布式版本中免费提供的 SQL 复制技术。

DB2e Sync Server 能够支持的并发同步数取决于底层服务器的硬件配置、相关的工作负载和数据变化率。如果您需要进行扩展以处理大量的并发同步,那么可以安装任意 Java 应用服务器(比如 IBM WebSphere Application Server);对于小一些的工作负载,DB2e Sync Server 的内置服务器 applet 应该能够处理其中的大部分。除此之外,还可以通过 DB2e Sync Server 场配置进一步提高可伸缩性和可用性。DB2e Sync Server 场配置允许您为多个 DB2e Sync Servers 构建集群,从而提供负载平衡和高可用性服务。

许可和定价

DB2e Database 的许可基于每个 Authorized User (AU)。如果您有 10 台设备,由 30 位人员每隔 8 个小时轮流使用它们,那么您需要 30 个 DB2e Database 许可。

与 DB2e Enterprise 相关的许可规则使用 DB2 和 IBM 的处理器价值单元定价 方法,该方法根据安装 DB2e Sync Server 的底层服务器或虚拟会话的 PVU 率为产品定价。这种许可方式允许您根据需要部署和同步任意数量的 DB2e 客户端;不过,所有这些设备都必须连接到已获得许可的 DB2e Sync Server 才能执行该操作。

考虑采用……

如 果您需要为资源受限的移动设备(比如移动电话)添加一个关系引擎(和同步服务),那么很可能需要使用 DB2e。不过,偶尔通过笔记本电脑连接的移动用户也可以考虑使用该产品,因为他们的应用程序不需要更丰富的 DB2 版本提供的高级特性,而这些特性不包含在 DB2e 中。事实上,您甚至可以将 DB2e 放到 CD-ROM 中,使用它在移动雇员的笔记本上进行目录 CD 查找。DB2e 部署通常适合在 “黑箱” 解决方案中使用;例如,您希望帮助商家收集统计数据或构建索引等。

运行在 DB2 Everyplace 上的酷特性

日本的一家公司 XING 是卡拉 OK(Karaoke)服务的开发者之一。该公司想要将泡吧者的卡拉 OK 体验提升一个层次,从而帮助卡拉 OK 舞厅用新的解决方案替换繁琐的、写在纸张上的歌曲目录,以吸引更多的业务。Xing 引入了一个定制的有针对性的卡拉 OK PDA —— 构建在 DB2e 之上 —— 以替换老式的、笨拙的手册式歌曲目录,并借此改善卡拉 OK 体验。现在,卡拉 OK 参与者可以使用 PDA 搜索包含 10, 000 支歌曲以上的歌曲目录,并且可以使用自己喜欢的条件(比如专辑、艺术家和风格等)进行搜索。更先进的是,该 PDA 还可以提供促销广告,甚至可以通过无线设备的触摸屏叫服务员送来食物和饮料!DB2e 让我在唱 Led Zeppelin 的 “Fool in the Rain” 时非常陶醉,不过如果没有我点来的啤酒,我可能想不起这首歌。我选择的这首歌不仅发挥了我的特长,还让我感到整个过程非常酷!

DB2 Personal Edition……DB2 的个性化功能

DB2 Personal Edition (DB2 Personal) 是一个独立的运行在基于桌面的硬件之上的用户数据库。DB2 Personal 可以在基于 Windows、Linux 的 Intel 和 AMD 工作站上使用。DB2 Personal 拥有 DB2 Express 的大部分特性,但它不可以用作中央数据库服务器,因为远程客户端不能连接到这个版本的 DB2。不过,DB2 管理工具可以与它连接,以执行远程管理。这个版本的 DB2 支持 64 位的实例,并且没有内存限制。

DB2 Personal 附带 DB2 Net Search Extender、Spatial Extender(对所有 DB2 9 和以后的版本和包免费)和基于 SQL 的复制。复制特性可以和 DB2 服务器结合使用,以偶尔连接到工作站或创建自己的发布/订阅 (pub/sub) 架构。DB2 Personal 还包含 pureXML 特性,它对 2009 年 2 月 10 日发行的 DB2 9.5 中的所有 DB2 版本是免费的。最后,在 Fix Pack 1 发行之后,Oracle Database 兼容性应该包含在 DB2 Personal 9.7 中,尽管日期有点滞后。

许可和定价

DB2 Personal 的许可基于每个安装,这非常类似于大部分 PC 工作站软件。如果多个用户轮流使用一个安装 DB2 Personal 的端点(他们不能同时使用,因为只有一台机器,并且 DB2 Personal 不是一个数据库服务器),您仍然只需要一个许可,因为许可是根据安装授予的,而不是基于授权用户。DB2 Personal 的每个安装都不需要考虑 RAM 和 Processor Value Units 等。例如,如果您有 10 个工作站,它们由 30 位人员每隔 8 个小时轮流使用,那么您将需要 10 个 DB2 Personal 许可。

考虑采用……

如 果应用程序的数据储存每次仅由一位用户使用,并且存在大量 PC 工作站(每个工作站安装 DB2 Personal 的一个副本),那么 DB2 Personal 是非常不错的选择。如果需要与分布式 DB2 服务器百分之百兼容时,请考虑 DB2 Personal。如果用户需要偶尔进行连接,并希望利用 DB2 Personal 的内置 SQL 复制特性设置一个同步数据和管理环境,以让移动工作者或远程服务器可以与他们的企业保持联系,那么也可以考虑使用 DB2 Personal。当然,这个版本仅适用于笔记本用户和特定的工作站,比如运行 point-of-sale (POS) 应用程序或 sales force automation (SFA) 应用程序的用户。最后,开发人员也经常使用 DB2 Personal —— 尽管我认为他们使用 DB2 Express-C 包更加合适。

运行在 DB2 Personal 上的酷特性

The National Geographic Society(著名的国家地理杂志的出版商)使用 DB2 Personal 来支持 The Genographic Project - 这是一个为期 5 年的研究项目,它使用高级的 DB2 数据库从数千位志愿者提供的 DNA 样本中查找模式。这个项目的目标是为一些古老的问题提供更好的答案,比如 “我们来自哪里?” 和 “我们如何来到这里?”。由 11 为主要调查人员领导的研究队伍配备了可靠的 IBM ThinkPad 笔记本电脑,这些电脑通过生物指纹扫描器来识别每个研究者的身份。这些 ThinkPad 笔记本配备了运行在 DB2 Personal 之上的定制数据收集应用程序。相关信息被收集储存在这些设备中,然后从 DB2 Personal 反馈给 DB2 Enterprise 数据库进行 DNA 分析。能够使用 DB2 跟踪人类的历史?真酷!

DB2 Express-C……免费构建、开发和分发应用程序

在 2006 年 1 月 30 日,IBM 通过宣布一个特别的免费 DB2 服务器 DB2 Express-C 迅速占领了数据库市场。您将注意到我将 DB2 Express-C 称为包,因为它不是 DB2 的 “官方” 版本。DB2 Express-C 是专门为合作伙伴和开发社区提供的,但当您熟悉这个包之后,您将发现它几乎无处不在。这与一些竞争者提供的免费 Express 产品形成鲜明的对比,因为竞争者的免费产品不仅对数据库的大小有严格的限制(DB2 Express-C 没有任何限制),而且在治理、自动维护和内存位模型等方面都有限制。当您深入研究这个 DB2 包之后,您将获得许多惊喜。对开发人员、中小型部署和学术社区而言,DB2 Express-C 是非常完美的。

与 DB2 版本相比,没有 包含在 DB2 Express-C 中的主要特性包括:

  • 购买增件特性包的能力,这些包可用于提供许多扩展服务。例如,您不能购买为表、临时表、索引和 XML XDA 等提供压缩服务的 Storage Optimization Feature Pack。

  • 不 能使用集群软件,比如 HACMP、SteelEye 或属于某些 DB2 版本的一部分的内置集群服务,来为两个以上的 DB2 Express-C 数据服务器构建高可用性集群。如果您需要在高可用环境中设置数据库,那么至少需要获得 DB2 Express 使用许可。这还意味着 High Availability Feature Pack 中的特性不能与这个 DB2 包一起使用;这些特性包括 HADR、内置的 DB2 集群技术(由 IBM Tivoli System Automation for Multi-platforms - TSA MP 提供)、高级复制服务和在线表重组。

  • 没有复制服务。

  • 不 能购买收费 DB2 版本中的获奖 24x7 IBM Passport Advantage 支持模型。这可能是 DB2 Express-C 的最大限制之一(以及不能为服务器建立高可用性集群)。DB2 Express-C 对模型的支持取决于其社区的能力。这个社区的论坛由来自全世界的大公司(和比较大的公司)的经验丰富的 DBA、DB2 开发人员团队和工程师维护,您可以通过查看它获得 DB2 Express-C 帮助、建议和支持(有些类似于开源社区采用的方式)。为了帮助培养和促进该社区的成长,developerWorks 等 Web 站点提供大量实践经验。

  • DB2 Express-C 仅当前的版本可用。换句话说,当发行了新的 DB2 Express-C 版本时,将不再提供旧版本的下载链接。如果您使用特定于某个 DB2 Express-C 版本的 ISV 软件,那么就需要注意了。例如,当发行了 DB2 Express-C 9.7 时,将从下载链接中删除 DB2 Express-C 9.5。

如果您需要利用以上列出的特性之一,则至少需要购买一个收费的 DB2 版本,例如 DB2 Express。

在 DB2 9.7 普遍可用时本文进行了最后的更新,在 DB2 9.7 发行版中引入的、属于 DB2 9.7 Oracle Database 兼容性支持特性集 的一部分的特性在 DB2 Express-C 中不可用。 注意,一些有助于轻松地从 Oracle Database 应用程序迁移到 DB2 的特性仍然可用,比如新的 Currently Committed 隔离级别。具体来讲,PL/SQL 支持等特性此时在 DB2 Express-C 包中已不再可用(查看 DB2 文档了解更多信息)。

在 DB2 Express-C 中,有许多限制都取消了,这很受欢迎:没有数据库大小限制、 没有自动管理和工具限制、没有内存模型限制(您可以使用 64 位内存模型,有些竞争者的 Express 版本尚未支持该模型),等等。这与一些竞争者的 Express 产品的吹嘘不同,DB2 Express-C 取消的限制是实实在在有用的;但本文不就此进行讨论。

从 2009 年第三季度开始,DB2 Express-C 就可以在运行 Linux、Windows、Mac OS X 或 Solaris (x64) 操作系统的服务器上使用。可以查看 IBM DB2 Express-C 下载站点 了解受支持的平台的完整列表。

开 发人员喜欢 DB2 Express-C,因为他们可以使用它免费开发和部署应用程序。ISV 也喜欢 DB2 Express-C,因为他们可以使用它作为打包应用程序的一部分免费地开发、部署和分发 DB2。记住,由于 DB2 Express-C 也是 DB2,所以您可以将这些应用程序部署到任何版本的 DB2 上,甚至将它们迁移到 DB2 for z/OS 而不需要对应用程序进行任何更改(假设您根据 DB2 家族的 95% 以上的 SQL API 编写应用程序)。

在学术界,教育者有机会提升 IBM Academic Initiative 项目 (查看本文的学术领域中的 DB2) 的价值,教育者可以通过让学生使用 DB2 Express-C 来免费地访问 DB2 技术,并且不需要与特定的课程绑定在一起。这些 DB2 实践者因此可以通过免费构建、部署和分发的数据服务器应用自己的专长。DB2 Express-C 是如此优秀,因而获得了著名的 VARBusiness's Best of the Midmarket 奖。您要不要亲自尝试使用 DB2 Express-C?请立即 下载

许可和定价

DB2 Express-C 可以免费构建、部署和分发。以后也不会对这个 DB2 包收取费用。不过,它的代码在优化之后使得 DB2 引擎在任何大小的服务器或虚拟会话上最多仅能支持 2 GB 的内存和 2 个处理器核。例如,如果您在拥有 8 个 VMWare 会话(配置有 4 个处理器核和 4 GB RAM)的服务器上安装 DB2 Express-C,那么每个 DB2 Express-C 安装仅能在每个虚拟会话中利用 2 个处理器核和 2 GB RAM。

DB2 9.5 与 DB2 9.7 的区别

在 DB2 9.5 中可用的 DB2 Express-C Fixed Term License (FTL) 包已经被删除。FTL 许可提供定期的支持合同和许多在基础的 DB2 Express-C 包中不可用的特性;例如,您可以使用 HADR 并使用 DB2 Express-C 创建高可用性集群。因为 DB2 Express-FTL 与 DB2 Express 非常相似,所以删除了 DB2 Express-C FTL 包;不过,现在 FTL 包成了完整的 DB2 Express 版本的一个许可选项。

考虑采用……

对于那些对 CPU 内核的要求不超过 2 个,对 RAM 的要求不超过 2 GB 的应用程序而言,DB2 Express-C 是非常有用的。您可以使用它来了解 DB2、开发 DB2 应用程序,甚至部署生产应用程序(具体取决于您的需求)。

运行在 DB2 Express-C 上的酷特性

1C 是俄罗斯经济繁荣的标志,也是俄罗斯财政收入中第二大企业应用软件(EAS)纳税商。尽管它实现了非常酷的风行模拟游戏,但它最广为流传的是其会计和财务 管理软件。1C 充分利用 DB2 Express-C 的所有不受限制的功能,DB2 中甚至有一个以 “1C 模式” 运行 DB2 引擎的设置(由 1C 安装程序自动设置)。Arktos 是 HVAC 设备制造商。Arktos 希望改善系统的总体响应性,并在出现故障时减少恢复时间。Arktos 雇用了 1C 业务合作伙伴 BIT 并迁移到运行在 DB2 Express-C 之上的 1C:Enterprise。Arktos 的 Oleg Illyin 注意到 “安装新的系统允许我们加快大部分业务流程,从而能够将完成大部分业务事务的平均时间缩短到原来的 1/5 至 1/10。例如,处理每月财务所需的时间从 6 小时减至 10 至 11 分钟。在数据库 (DB2 Express-C) 的帮助下,我们在消息系统出现故障时能够进行自动、快速、可靠的数据恢复流程。”当俄罗斯的第二大 EAS 供应商果断地将关键应用程序迁移到免费的 DB2 包之后,一位 1C 客户的体验从大约 300 分钟减少至 11 分钟,这简直是飞速改进!

DB2 Express Edition……简单、安全、廉价

DB2 Express Edition (DB2 Express) 是入门级并受全面支持的 DB2 服务器,它是廉价、特性齐全、行业领先并基于开放行业标准的关系数据库。这个版本的目标用户通常是 SMB(中小型企业)和 ISV。对于选择利用运行 LinuxSolaris x64(64 位)Windows 的服务器的优势的企业(这些链接指向最新的平台支持信息),DB2 Express 提供一个很有吸引力的入门点和有竞争力的价格。

因 为 DB2 Express 就其核心而言是一个成熟的 DB2 服务器(与其他竞争者不同,该版本没有各种限制),所以 DBA 可以利用其内置的自动管理功能(比如 Self Tuning Memory Manager (STMM)、Configuration Advisor、IBM Data Studio 和 Design Advisor)、自动维护计划、自动备份调优、备份压缩、文本搜索和调节功能等。从总体看,这些服务能够提升 DB2 解决方案的性能和可靠性,同时降低管理的复杂性、放松技能要求并降低总体拥有成本。在 DB2 Express 9.7 可以大范围使用时,这个版本还不包含 Oracle 兼容性支持;请关注最新消息(因为本文不是该特性的可用时间的 IBM 官方声明),但您应该能够在 2009 年年底看到该特性(Fix Pack 1)。

DB2 Express 支持高可用性 (HA) 架构,比如 HA 集群技术和日志传输。如果您使用在 DB2 Express 9.7 中引入的新 FTL 和 SERVER 许可注册 DB2 Express,那么它将包含内置的 Tivoli System Automation for Multi-platforms (SA-MP) 集群技术、DB2 Advanced Copy Services (DB2 ACS) 支持和 HADR。

这个 版本的 DB2 与针对 Linux、Windows 和 UNIX 平台的可伸缩 DB2 关系数据库家族完全兼容,并且您可以轻松地预配置 DB2 Express 以透明地将其安装到应用程序中,从而实现轻松部署。客户喜欢 DB2 Express 因为他们把它看作是解决方案;业务合作伙伴也喜欢它,因为他们相信 DB2 Express 能够无值守运行。

购买 DB2 Express 之后就可以免费使用 DB2 Net Search Extender、Spatial Extender(所有 DB2 版本都可免费使用)和基于 SQL 的复制。pureXML 和异构联合也是免费的特性(在 2009 年 2 月 19 日之前它们是收费的组件。您必须遵循 DB2 9.5 Fix Pack 3b 许可条款或更新条款才能免费使用这些特性),这进一步增加了 DB2 Express 的价值。pureXML 提供在 DB2 Express 数据库中创建 pureXML 列的能力,并且可以利用相关的 XML 服务集,比如 XML Schema 验证和注册服务、基于路径的索引服务和 XQuery 服务等。pureXML 提供的服务能够实现在储存 XML 数据时既不影响灵活性(XML 的本质)又不影响性能(使用数据库服务器储存 XML 数据的原因之一)。(我仔细了解了竞争对手的 XML 产品,因此我可以保证 pureXML 的某些东西非常 “纯” 的;尽管这不在本文的讨论范围之内,但您可以想想它的神秘之处。异构联合提供跨 IBM 关系数据库服务器家族成员创建别名的能力。这使您能够跨位于不同平台的 DB2 和 Informix 表开发应用程序,而不需要关心它们的位置。例如,您可以使用该特性轻松地创建这样一个应用程序,它可以将位于 DB2 for i 数据库和 DB2 for Linux on System z 或 Informix 等数据库上的分布式数据合并起来。如果您需要跨非 IBM 数据库服务器(比如 Oracle 和 SQL Server 等)将一个查询联合起来,或利用基于队列的复制,那么您必须从 IBM Information Server 套件 购买其中的产品之一。

DB2 Express 的一个非常优秀的特性是您可以通过一个 Feature Pack 进行企业性扩展,将这个特性包添加到 DB2 Express 安装可以丰富企业服务。截至 2009 年 2 月 10 日,惟一可以在 DB2 Express 上使用的特性包是 High Availability Feature Pack; 此外,只有根据 PVU 或 AU 模型获得 DB2 Express 服务器许可时才需要该特性包,为什么?在 DB2 9.7 中,Express 产品借助 FTL 和 SERVER 许可并免费提供该特性包中的所有特性而得到许多企业的支持。不过,我们最强大的竞争对手在 Enterprise 级产品中仅提供 HADR 功能,或对该功能进行限制。

流行的 SMB 数据库仅在 Enterprise 版本中包含高级在线和管理特性,与此相比,DB2 Express 不仅价格有优势,而且包含自动管理功能,因此您可能觉得与 DB2 Express 相见恨晚!

特性包首先是在 DB2 9 中引入的,它的目的是为不需要大量服务器,但需要使用可在成熟的企业解决方案中找到的服务的应用程序提供针对数据服务的独立计价 方法。特性包的许可方式必须和 DB2 服务器一样,即通过 AU 或通过驻留它的服务器或虚拟会话的 PVU 率。

对 我而言,大量特性包开始在 DB2 版本之间产生混淆,所以我希望它们能随 DB2 一起进入终端服务器市场。从历史的角度看,在 DB2 9 中针对 DB2 Express 9 的特性包特别多。在 DB2 9.5 发布时,删除了一些特性包(我很高兴已经删除了 pureXML 和 Homogeneous Federation Feature Packs,它们现在在每个 DB2 Express 版本中都是免费的 技术)。这使 High Availability Feature Pack 成为 DB2 Express 9.7 服务器的惟一增件。这好像是做广告一样,但如果您开始考虑 为高可用性环境中的分布式 DB2 9.5 服务器颁发许可,以及开始包含到 DB2 Express 中的特性,您肯定忍不住感到欢喜!

High Availability Feature Pack 通过包含对在线表重组的支持、两个针对在 DB2 中内置的 IBM Tivoli SA MP 高可用性服务的节点集群许可、DB2 高级复制服务支持和 High Availability Disaster Recovery (HADR),从而提供了大量可以提升运行在 DB2 Express 服务器上的应用程序的可用性的服务。这个特性包中的所有特性在 DB2 Workgroup 和 DB2 Enterprise 中都是免费的。

HADR 是一组可用性服务,它不仅提供开箱即用的数据库可用性,还提供一个保护计划,该计划既跨整个解决方案提供冗余,又通过以秒为计算单位的平均修复时间 (mean-time-to-repair,MTTR)满足最紧急的可用性服务级别协议(SLA)。HADR 的最大好处是进行几次单击就可以设置好。现在,我们正在研究在备份服务器上读取的技术,它允许您为只读查询打开备份 HADR 数据库 —— 该特性在不久的将来就能实现(可能在 DB2 9.7 Fix Pack 1 中)。

online table reorganization (REORG) 有时称为 in-place REORG,它与其他供应商的产品中的所有特性都不同。它提供持续的表重组,并且不需要传统的影子复制方法所需的额外磁盘空间。可以开始、暂停和控制它; 修改操作状态的好处能够迅速得到反映。例如,您可以在夜间运行重组,然后在白天控制甚至暂停它。访问表的应用程序能够在停止时立即看到好处:这就是真正的 可用性。

Advanced Copy Services (ACS) 使您能够利用受支持的存储设备的快速复制技术,该技术可用于执行备份和恢复操作的数据复制部分。使用存储设备执行数据复制的能力让备份和恢复操作更加快速。使用 DB2 ACS 的备份操作通常称为快照备份

DB2 包含一组 内置集群服务, 它使您能够为两个服务器建立高可用性集群,甚至自动化 HADR 解决方案的故障转移。除此之外,DB2 安装程序还可以自动地配置这个高可用性集群。要让 DB2 高可用性解决方案更加健壮,可以使用受新的 DB2 High Availability Instance Configuration Utility (db2haicu) 支持的高可用性管理框架,该框架提供一个基于文本的界面,您可以使用它在集群环境中配置、管理和同步 高可用数据库拓扑的基础设施定义。现在,DB2 可以通过查询系统收集关于数据库实例、集群环境和集群管理器的信息,并且在发生变更时让整个集群保持同步。例如,添加一个新的储存容器:在集群的其中一个 服务器中执行的操作将同步到另一个服务器中,并且这由 DB2 完成;这是非常了不起的,因为同步是一个繁琐并且容易出错的过程,并且是导致停机的首要原因 —— DB2 在这里帮了大忙。

许可和定价

DB2 Express 存在一些架构限制,具体情况取决于驻留它的服务器或虚拟会话:

  • DB2 Express 在整个数据库服务器中最多支持 4 GB 内存(数据库引擎将限制内存消耗,使其不超过 4 GB)。虽然受到内存限制,但您可以将 DB2 Express 安装在内存大于 4 GB 的服务器上,4 GB 限制仅针对 DB2 服务器软件。 例如,如果在拥有 8 GB 内存的服务器上有两个数据库,那么可以为每个数据库(即使它们在不同的实例中)分配 4 GB 的内存,但在物理服务器上的所有实例和数据库的内存之和则不能超过 4 GB。如果您配置了 2 个 VMWare 会话并且在每个会话中安装 DB2 Express,假设服务器的总内存为 32 GB,那么每个会话中的 DB2 Express 服务器仅能对 4 GB 的内存进行寻址。(当然,您可以在相同的物理服务器上独立地注册每个 DB2 Express 服务器,这就导致每个 DB2 Express 副本可以对多达 4 GB 的内存进行寻址,这与第一个场景相反)。

  • 如果您对 DB2 Express 使用传统的 PVU 或 AU 许可,那么只能将 DB2 Express 安装在其 DB2 和 IBM 的处理器价值单元定价 率小于等于 200 的服务器上。由于双核 x86 Intel 处理器的每核为 50 PVU,因此您只能将 DB2 Express 安装在一个最多运行两个 x86 Intel 双核处理器上;这样的服务器通常称为两槽双核 x86 服务器。

  • 如果您使用最新引入的 FTL 或 SERVER 许可注册 DB2 Express 服务器,则不需要关注服务器的 PVU 或 RAM 限制,因为 DB2 Express 将自动将服务器的处理器内核控制在小于等于 4 个,将内存控制在小于等于 4 GB。

  • DB2 Express 服务器可以 使用子容量许可。在虚拟环境中,您仅为在特定的虚拟化会话中使用的东西付费;不过,前面列出的限制适用于所有虚拟化会话。不同的平台和虚拟化技术有不同的要求,这允许您在子容量环境中使用该版本。单击 这里 了解详细信息。

可以以下列方式之一获得 DB2 Express 服务器许可:

  • Processor Value Unit License (PVU):您必须为安装 DB2 Express 的服务器或虚拟化会话购买相关的所有 PVU。该许可允许任意数量的用户以任意方式访问 DB2 Express 服务器。如果您使用 PVU 为 为高可用性环境中的分布式 DB2 9.5 服务器颁发许可 DB2 Express 备份服务器获得许可,那么可以为它获得 100 PVU 的许可,而不需要考虑它使用什么处理器架构。

  • Authorized User License (AU):您 必须购买所有将访问 DB2 Express 服务器的 authorized users (AU)。AU 是一位在公司之内或之外带有特定身份的使用者(有时可以是一个应用程序或工具,只要它能代表其他用户)。只要终端用户是可识别的,他们就可以通过 Internet 使用这些许可,因为这些许可需要识别用户的特定身份。注意术语特定身份。如果您使用多层或连接集中软件,那么将该软件应用到连接之前必须完全识别所有这些用户。AU 许可不能在调换工作之后使用(但可以在轮班时使用),因为它仅对特定数据服务器有效。

    任何访问数据库的人都必须有一个 AU 许可;不过,不管有多少用户访问您的 DB2 Express 服务器,您至少 要购买 5 个 AU 许可。例如,如果有 25 位用户需要访问两个独立的服务器,那么则需要为他们一共购买 50 个 AU 许可:2 个服务器 x 25 AU/服务器。即使每次只有 12 个这些用户连接到数据服务器,仍然需要为每个服务器获取所有 25 个用户的许可(所以仍需 50 个 AU 许可)。如果只有一个 DB2 Express 服务器和 3 个用户,那么仍然需要购买 5 个 AU 许可,因为这是该版本要求的最少数量。最后,当为一个 warm DB2 Express 备份服务器购买许可时,如果热生产服务器也使用 AU 许可模式,则仍需为它购买 5 个 AU。

  • Fixed Term License (FTL):从 DB2 9.5 开始(在 DB2 9.7 时 DB2 Express-C FTL 不再可用),这个新的 DB2 Express 9.7 许可选项就取代了 DB2 Express-C FTL 许可。当您使用 FTL 许可注册 DB2 Express 时,则为 DB2 Express 服务器购买了以年为单位的支持和特性合同。您不需要考虑用户的数量、服务器的 PVU 转换和处理器核等:您仅需要为安装 DB2 Express 的每个服务器或虚拟化会话购买一个 FTL 许可。如果您有 5 个服务器,则需要购买 5 个许可。DB2 Express FTL 许可将服务器资源的使用控制为处理器内核小于等于 4 个,内存小于等于 4 GB。例如,如果您在一个拥有 8 个 VMWare 会话,并且每个会话都配置有 6 个处理器内核和 6 GB RAM 的服务器上安装 DB2 Express,那么每个 DB2 Express 副本会在每个虚拟化会话中使用 4 个处理器内核调度工作,并且最多使用 4GB RAM。您可以在任意大小的服务器上安装 DB2 Express FTL。FTL 许可允许任意数量的用户访问 DB2 Express 服务器。一个好消息是,通过 FTL 许可注册的 DB2 Express 服务器还附带了 High Availability Feature Pack 及其所有好处(比如 HADR 等)。

  • Server License (SERVER):DB2 Express SERVER 许可(DB2 9.7 中的新特性)也可以以 FTL 许可的方式获得 —— 以每服务器为单位。FTL 许可和 SERVER 许可的区别是 FTL 许可是一种订阅(租用 DB2 Express 软件),而 SERVER 许可是永久的许可(拥有 DB2 Express 软件)。DB2 Express SERVER 许可拥有 FTL 许可的优点,并且可以安装在任意大小的服务器上。SERVER 许可允许任意数量的用户访问 DB2 Express 服务器。使用 SERVER 许可注册 DB2 Express 服务器与前面的 FTL 许可一样:为每个安装获取许可,不管 DB2 Express 安装在物理服务器还是虚拟化会话中。一个好消息是,通过 SERVER 许可注册的 DB2 Express 服务器还附带了 High Availability Feature Pack 及其所有好处(比如 HADR 等)。

图 3 归纳了 DB2 Express-C 和 DB2 Express 的主要区别:


图 3. DB2 Express-C 和 DB2 Express 的主要区别
DB2 Express-C 和 DB2 Express 的主要区别

在 DB2 9.5 与 DB2 9.7 中的区别

在 DB2 9.5 和 DB2 9.7 中,DB2 Express 的最大变化是新的 FTL 和 SERVER 许可选项可用了。我强烈 建议认真研究新的 DB2 Express FTL 或 SERVER 许可,以发现它们的最大价值。例如,使用这两个许可之一,您可以在 DB2 Express 服务器上利用 HADR,而不需要 购买 High Availability Feature Pack。此外,随着处理器上的内核的功能越来越强大,您可以根据自己的处理器架构充分利用 PVU 以带来更大的计算能力,而不是增加与 PVU 处理器架构相关的成本。

考虑采用……

DB2 Express 是一个入门级 DB2 服务器,它适用于对数据库内存的要求小于等于 4 GB、对处理能力的要求小于 200 PVU 的工作负载(使用 FTL 和 SERVER 可能需要更多资源支持,但要使用 PVU 率更小的服务器)。这个版本不适用于需要高可伸缩性(比如并行或 MDC 表)的应用程序,因为这些特性不是基础的 DB2 Express 服务器的一部分,所以不能通过特性包使用它们。

运行在 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 服务器,它提供的特性与 DB2 Express 相同,但更适合在高可用性工作负载和需要更多内存和处理能力的工作负载中使用(不管使用哪种许可,DB2 Workgroup 都免费包含了 High Availability Feature Pack 的组件)。

DB2 Workgroup 在 DB2 运行的大部分分布式平台上都受支持:Linux(Linux on System z 除外)、WindowsAIXSolaris(SPARC 和 x86)和 HP-UX;这些链接提供最新的平台支持信息。

如 前所述,DB2 Workgroup 在特性上与 DB2 Express 相似;不过,它免费包含 High Availability Feature Pack 中的所有组件,并且不受许可方式的影响。除此之外,DB2 Express 和 DB2 Workgroup 的区别就是 RAM 和处理器能力的限制。

记住,DB2 服务器的版本是在原有基础上逐增的,因此 DB2 Express 中的特性可能包含在 DB2 Workgroup 中;例如,STMM、备份压缩、pureXML 和同构联合等在 DB2 Workgroup 中都是免费可用的,因为它们是 DB2 Express 中的特性。DB2 Workgroup 中没有 可用的 Feature Packs(使用 FTL 或 SERVER 许可注册 DB2 Express 也是这样)。

区 分 DB2 Workgroup 和 DB2 Express 的一个特性是在 DB2 9.7 发行版中支持大部分 Oracle Database 兼容性工作。在 DB2 9.7 普遍可用时,DB2 Workgroup 在 DB2 9.7 中完成了所有 Oracle Database 兼容性工作,但 DB2 Express 则没有全部完成(例如,DB2 Express 没有 PL/SQL 方言支持)。不过,如前所述,所有分布式 DB2 版本都将实现 Oracle Database 兼容性支持。DB2 Express 在不久的将来就会有完整的 Oracle Database 兼容性支持,敬请期待(大约在 DB2 9.7 Fix Pack 1 发行时)。

许可和定价

从 核心功能的角度看,DB2 Workgroup 和 DB2 Express 是非常相似的产品,即使它们在临时 Oracle Database 兼容性方面存在区别,以及在未使用 FTL 或 SERVER 许可购买 DB2 Express 时必须购买 High Availability Feature Pack,如前所述。但从许可的角度看,这两个版本在对运行架构的限制上存在区别,即:

  • DB2 Workgroup 对整个数据库服务器的最大内存限制是 16 GB(数据库引擎将限制内存的使用,使其不超过 16 GB)。尽管存在该内存限制,您仍然可以将 DB2 Workgroup 安装在内存大于 16 GB 的服务器上 —— 16 GB 的限制仅针对 DB2 服务器软件。 例如,如果在拥有 32 GB 内存的服务器上有两个数据库,那么可以为每个数据库(即使它们在不同的实例中)分配 16 GB 的内存,但在物理服务器上的所有实例和数据库的内存之和则不能超过 16 GB。如果您配置了 2 个 VMWare 会话并且在每个会话中安装 DB2 Workgroup,假设服务器的总内存为 128 GB,那么每个会话中的 DB2 Workgroup 服务器仅能对 16 GB 的内存进行寻址。当然,您可以在相同的物理服务器上独立地注册每个 DB2 Workgroup 服务器,因为每个 DB2 Workgroup 都安装在自己的虚拟化会话中,这就是为什么必须为每个会话获得许可,以让每个 DB2 Workgroup 能够对 16 GB 的服务器内存进行访问)。

  • 如果您对 DB2 Workgroup 使用 PVU 或 AU 许可(见下),那么只能将 DB2 Workgroup 安装在其 DB2 和 IBM 的处理器价值单元定价 率小于等于 480 的服务器或虚拟化会话上。如果您使用新的 SOCKET 许可,则不存在 PVU 限制;否则,将限制为通过 4 个槽使用 16 个处理器内核。

  • DB2 Workgroup 服务器可以 使用子容量许可。在虚拟环境中,您仅为在特定的虚拟化会话中使用的内容付费;不过,前面列出的限制适用于所有虚拟化会话。如何您在虚拟化环境中使用 SOCKET 许可注册 DB2 Workgroup,那么服务器使用的槽数不能大于 4 个;例如,使用 SOCKET 许可的 DB2 Workgroup 版本不能虚拟化 8 路的服务器,但可以虚拟化 4 路的服务器。注意,这 适用于 DB2 Workgroup SOCKET 许可。如果您的 DB2 Workgroup 使用 PVU 或 AU 许可,则不存在该限制。不同的平台和虚拟化技术有不同的要求,这允许您在子容量环境中使用该版本。单击 这里 了解详细信息。

可以以下列方式之一获得 DB2 Workgroup 服务器许可:

  • Processor Value Unit License (PVU):您必须为安装 DB2 Workgroup 的服务器或虚拟化会话购买相关的所有 PVU。该许可允许任意数量的用户以任意方式访问 DB2 Workgroup 服务器。如果您使用 PVU 为 为高可用性环境中的分布式 DB2 9.5 服务器颁发许可 DB2 Workgroup 备份服务器获得许可,那么可以为它获得 100 PVU 的许可,而不需要考虑它使用什么处理器架构。

  • Authorized User License (AU):您 必须购买所有将访问 DB2 Workgroup 服务器的 authorized users (AU)。AU 是一位在公司之内或之外带有特定身份的使用者(有时可以是一个应用程序或工具,只要它能代表其他用户)。只要终端用户是可识别的,他们就可以通过 Internet 使用这些许可,因为这些许可需要识别用户的特定身份。注意术语特定身份。如果您使用多层或连接集中软件,那么将该软件应用到连接之前必须完全识别所有这些用户。AU 许可不能在调换工作之后使用(但可以在轮班时使用),因为它仅对特定数据服务器有效。

    任何访问数据库的人都必须有一个 AU 许可;不过,不管有多少用户访问您的 DB2 Workgroup 服务器,您至少 要购买 5 个 AU 许可。例如,如果有 25 位用户需要访问两个独立的服务器,那么则需要为他们一共购买 50 个 AU 许可:2 个服务器 x 25 AU/服务器。即使每次只有 12 个这些用户连接到数据服务器,仍然需要为每个服务器获取所有 25 个用户的许可(所以仍需 50 个 AU 许可)。如果只有一个 DB2 Workgroup 服务器和 3 个用户,那么仍然需要购买 5 个 AU 许可,因为这是该版本要求的最少数量。最后,当为一个 warm DB2 Workgroup 备份服务器购买许可时,如果热生产服务器也使用 AU 许可模式,则仍需为它购买 5 个 AU。

  • Socket License (SOCKET):DB2 Workgroup SOCKET 许可(在 DB2 9.7 中刚刚引入)可以通过以特定的价格购买底层服务器的槽而获得。例如,如果您有一个 PVU 为 800 并包含有 4 个槽的 4 核服务器,那么您只需要购买 4 个 SOCKET 许可。SOCKET 许可允许任意数量的用户连接到 DB2 Workgroup 服务器。使用 SOCKET 许可运行 DB2 Workgroup 时,不可以将它安装在槽数大于 4 的服务器上。最后,不管每个槽上有多少个核,DB2 将根据在服务器的 BIOS 中定义的核枚举算法将最大的内核数量限制为 16 个。例如,如果您有一个包含 4 个槽,每个槽有 6 个内核的服务器,那么 DB2 仅调度为使用 24 个可用内核中的其中 16 个。您的 BIOS 将决定是否为每个槽的 4 个内核分配工作,或者饱和地使用第一个和第二个槽,并给第三个槽的 4 个剩余内核调度一些工作 —— 第三个槽的 1/3 的容量和第四个槽都没有得到利用。如果您在本文的最后一次更新时考虑可用内核的 PVU 率,您将发现使用 SOCKET 许可时可以获得高达 960 PVU 的处理能力。与使用 PVU 或 AU 许可的 DB2 Workgroup 相比,使用 SOCKET 能获得的 PVU 要多一倍!

在 DB2 9.5 与 DB2 9.7 中的区别

DB2 Workgroup 在 DB2 9.5 和 DB2 9.7 之间发生的最大许可和打包变化是引入了新的 SOCKET 许可。如您所见,这个 SOCKET 许可可以为 DB2 Workgroup 环境提供更多的处理能力。例如,使用 PVU 许可的 DB2 Workgroup 将 PVU 限制为 480。不过,4 槽的 POWER6 服务器可以提供 960 个 PVU,因此与 DB2 9.5 中的许可相比,SOCKET 许可为 DB2 Workgroup 服务器提供了翻倍的处理能力。如前所述,如果您使用 SOCKET 许可,服务器的槽数将限制为最多 4 个,即使在虚拟化环境中也是一样。例如,如果您有一个 PVU 为 1,920 的 8 槽 POWER6 服务器,那么可以配置 4 个 480 PVU LPAR,并且每个 LPAR 中运行 DB2 Workgroup(很好的增强机会)。使用 SOCKET 许可时则不能这样做,因为示例服务器的槽数超过了 4 个。

考虑采用……

DB2 Workgroup 可以在业务中担任许多角色。它非常适用于需要成熟的可伸缩关系数据库的中小型企业,但内存大于 16 GB、处理器超出 PVU 或 SOCKET 限制的数据服务器则不能享受到额外资源带来的好处。与 DB2 Express 相比,DB2 Workgroup 尤其适合需要为业务应用程序提供小服务器的企业环境,或需要为低级事务吞吐应用程序提供企业服务的部门。(您可以以中端市场的价格获得企业级可用性,不错 吧!)

运行在 DB2 Workgroup 上的酷特性

TMW Systems(最 近收购了 Maddocks Systems)为载重汽车运输公司 TruckMate 提供领先的后勤软件应用程序。TMW/Maddocks 在体验了 Oracle 和 SQL Server 之后,在几年之前改用 DB2。除了支持 McCain Foods(始于 20 世纪初)的大部分运输以及支持 Hudson's Bay(加拿大的最大零售商)的产品运输的软件之外,还可以在 北美最成功的运输公司 中找到它们的软件。Bob Maddocks(Maddocks Systems 的前 CEO —— 他编写了自己的递归式 SQL)体验到了 DB2 Workgroup 的最大价值,他注意到 “我们既可以为每天出 10 个票单的小型运输公司提供服务,又可以为每天出 10,000 个票单的大型运输公司提供服务,可伸缩性对我们十分重要……”“……DB2 中的自动化特性将为我们节省 30-35% 的支持成本……”。免费的自动维护提供了可伸缩性、低成本、易于使用和直接的成本节省……并且能够保证新鲜的 McCains 法式炸薯条能够经常出现在我女儿 Chloe 光顾的食品店。现在连 Chloe 都夸赞 DB2 很酷!

DB2 Enterprise Server Edition……超级的可伸缩性、可靠性和灵活性

DB2 Enterprise Server Edition (DB2 Enterprise) 是 IBM 的一流的、支持 Web 的全功能客户端/服务器数据库服务器,它可以在所有受支持的、可以运行 DB2 版本的分布式平台上使用,即 LinuxWindowsAIXSolarisHP-UX;这些链接提供最新的平台支持信息。

DB2 Enterprise 主要针对中型和大型部门服务器,并提供其他 DB2 版本的最基础的特性和服务。例如,这个版本免费提供内部并行查询、MDC、MQT 和表分区等,并且在 DB2 Express 和 DB2 Workgroup 安装中根本不可能使用这些特性和服务。

这个版本的 DB2 不对内存进行任何限制(我们在实验室的基准测试中缓冲池的内存多达 4 TB —— 这些内存比许多公司的数据都大)。这个版本对运行 DB2 Enterprise 的底层服务器或虚拟化会话的最大 DB2 和 IBM 的处理器价值单元定价 率也没有任何限制。

DB2 Enterprise 还有一组专门的特性包(其他 DB2 版本中不包含),其目的是使用更丰富的数据服务扩展企业解决方案。

针对 DB2 Enterprise 的特性包

如 前所述,DB2 Enterprise 有自己专用的特性包,它为这个版本的 DB2 提供一组高级的数据服务。与为需要安装 DB2 Enterprise 的服务器获取许可一样,也需要以相同的方式为 DB2 Enterprise 的特性包获取许可,即通过 AU 或 PVU 许可。不过,一些特性包(比如 DB2 Storage Optimization Feature Pack)不能通过 AU 许可使用,只能通过 PVU 许可使用。这意味着为了购买这样的特性包,您必须使用 PVU 许可注册 DB2 Enterprise。

在 DB2 9.7 中可用的特性包包括:

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

    DB2 9.5 引入了一组新的工作负载管理服务,其目的是取代由 DB2 Query Patroller 和 DB2 Governor 组成的旧架构;这些服务统称为 Workload Management 或 DB2 Workload Manager (DB2 WLM)。DB2 9.7 扩展了该架构,以使用更多的方式来显式地在执行负载(比如 I/O、CPU 和缓冲池优先级)之间控制计算资源、检测并阻止所谓的 rogue 查询,以及以多种方式严密地监控数据库活动,等等。

    DB2 WLM 为以前以 DB2 Query Patroller 和 DB2 Governor 为中心的 DB2 工作负载管理解决方案提供可行的代替解决方案。这些产品在 DB2 9.7 中仍然受到完整的支持,并且可以在 DB2 9.7 WLM 环境中运行,但它们将慢慢淡出,并被 DB2 WLM 取代。

    Performance Optimization Feature Pack 还包含一个称为 DB2 Performance Expert 的受限制的 Optim Performance Expert 版本。DB2 Performance Expert 简化了性能管理和调优。它为 DBA 提供一个一致的视图,让他们可以查看 DB2 服务器上的实例、子系统、数据库和应用程序。例如,它有一组预定义的报告,用于识别 DB2 中的资源缺乏和异常条件、锁冲突和死锁,以及导致高工作负载的应用程序和 SQL 语句。DB2 Performance Expert 还包含一组关于 SQL、数据库和缓冲池活动的详细报告,该报告可用于分析趋势和最佳性能评估等。此外,它还包含经验值、可定制警告和警告阈值等。作为该特性包的一部分的 DB2 Performance Expert 仅能在运行 Linux、UNIX 和 Windows 的 DB2 服务器上使用,而在该特性包之外购买的 Optim Performance Expert 工具则可以在整个 DB2 家族中使用。

  • Advanced Access Control Feature Pack: 为储存在 DB2 Enterprise 服务器环境中的数据提供基于标签的访问控制(LBAC)保护服务。借助这个特性,数据管理员可以在表的列和行级别控制用户和组的读写访问。LBAC 通过为表对象添加安全标签来控制对它的访问。尝试访问某个对象的用户必须提供该对象的安全标签。如果存在匹配的安全标签,则可以进行访问;如果不存在,则 拒绝访问或隐藏数据。

    Advanced Access Control Feature Pack 提供一个安全框架,该框架可以围绕业务实体的层次结构表示、数组、树或它们的组合进行构造。除此之外,LBAC 还可用于在文档级别控制对储存在 pureXML 列中的 XML 文档的访问。

    我强烈建议您阅读 IBM Security Blueprint 深入了解数据安全和威胁场景,以及了解如何构建利用 DB2 的威力的有效解决方案;LBAC 只是您的安全工具箱中的工具之一。此外,请一定要阅读 DB2 最佳实践安全性文档

  • Geodetic Data Management Feature Pack:为 地球的曲率提供空间分析(这是该特性包与作为每个 DB2 版本或包的一部分的 Spatial Extender 的主要区别)。Geodetic Data Management Feature Pack 提供减少地区表面投影造成的偏差所需的高级分析。Geodetic Data Management Feature Pack 对军事防御应用程序和天气应用程序等尤其有用。

    例如,使用 DB2 Spatial Extender,您可以使用不同的投影方法让地区 “变平”(例如,麦卡托投影法),并解释您的应用程序中的错误率(可能偏差并不影响业务问题)。例如,当试图确定打 911 电话的人的位置时,偏差 10 英尺是没有什么影响的。但在国家安全应用程序中(比如导弹防御系统)则需要更精确的测量,并且不能接受用经度和纬度坐标将地球表面 “扁平化” 带来的偏差。这时候将需要使用 Geodetic Data Management Feature Pack。用外行人的话说就是,如果认为格陵兰岛的面积是非洲面积的 1/14 仍然表示应用程序出现问题的话(我上小学时这个比例是对的),那么则需要使用这个特性包进行空间分析了。

  • Mobility on Demand Feature Pack: 提供享受价格折扣的 DB2 Everyplace Enterprise 组件,可以在获得许可的 DB2 Enterprise 服务器上使用这些组件。这个特性包允许您在任意数量的移动设备上获取企业数据,前提是它们通过购买了该特性的 DB2 Enterprise 服务器同步数据。

  • DB2 pureScale:在 2009 年 10 月 11 日,IBM 宣布了 OLTP 工作负载 DB2 pureScale 在可用性和可伸缩性方面取得的突破性进展。DB2 pureScale 通过提供不封顶的容量、持续的可用性和真正的 应用程序透明性来降低业务增长的风险和成本。在 IBM Power Systems 上的 DB2 pureScale 引入了 PowerHA pureScale 技术,从而在分布式平台上提供与 System z 接近的数据库可伸缩性和可靠性。它是专门为现在以及未来的最苛刻的事务处理需求而设计的。由于在节点失败期间的不中断处理和冗余架构,可用性级别得到了突 破。增加容量是非常容易的,因为 DB2 pureScale 不需要更改应用程序或数据库调优。

    如果我希望您记住与 DB2 pureScale 有关的东西,那就是它提供透明的应用程序扩展。 尽管这个词汇是一些竞争者的营销口号,但那只是一种宣传手段。DB2 pureScale 直接继承了 DB2 for z/OS 耦合功能,并且继承了许多基本的特性,比如全局共享缓冲池、页注册和锁服务。 这意味着您不需要将数据选项的位置构建到应用程序中。此外,还有许多令人称奇的工程技术,它提供的故障检查恢复是我在分布式计算环境中见到的最快恢复,并 且提供了接近线性的可伸缩性。深入探讨 DB2 pureScale 不属于本文的主题,但我强烈建议您进一步了解该技术。

    需 要注意的是,DB2 pureScale 仅在 DB2 9.8 中可用。不过,您迁移到 DB2 9.8 的惟一原因就是运行 DB2 pureScale。事实上,DB2 9.8 暂时还不支持 DB2 9.7 中的一些特性。因此,如果您正在使用 DB2 9.7,并且没有计划购买 DB2 pureScale Feature Pack,那么就不要迁移到 DB2 9.8。

    图 4 显示了 DB2 9.8 pureScale 环境的架构图:



    图 4. DB2 9.8 pureScale 环境
    DB2 9.8 pureScale 环境

    如 您在图 4 所见,DB2 pureScale 环境由多个机器组成。PowerHA pureScale (CF) 为全局缓冲池、锁管理和相关的页列表提供中央控制服务。DB2 pureScale 环境可以有一个或多个 PowerHA pureScale 服务器。客户端连接到 DB2 pureScale 集群中的成员,并且这些成员与 CF 交互以帮助处理客户的应用程序。在 DB2 pureScale 环境中,您必须在 DB2 Enterprise Edition 中获得每个成员 的许可。此外,您必须为集群中的每个成员 购买 DB2 pureScale Feature Pack。您不需要 为 CF 服务器购买任何 DB2 许可或特性包。

    例 如,假设您有一个由 5 个 POWER 服务器组成的 DB2 pureScale 环境,并且每个服务器的 PVU 为 800。其中两个服务器用来执行 CF 的角色(假设它们在 active/warm 配置中是成对的),另外 3 个服务器充当数据成员。在这个环境中,您必须购买 2400 PVU 的 DB2 Enterprise(800 PVU x 3 个服务器)+ 2400 PVU 的 DB2 pureScale(800 PVU x 3 个服务器)。您不需要为这两个 CF 购买 DB2 Enterprise 或 DB2 pureScale 许可。

  • DB2 Storage Optimization Feature Pack:提供储存压缩服务以优化数据的性能和资源占用。这个特性包提供首次在 DB2 9 中引入并在 DB2 9.5 和 DB2 9.7 中得到改进的压缩技术。

    深 度压缩服务首先是在 DB2 9 中引入的,并且迅速席卷了整个数据库行业。该技术在 DB2 9.5 中进行了扩展,并纳入了自动词典创建。在 DB2 9.7 中,压缩技术通过支持临时表压缩和 pureXML XDA 压缩等得到了进一步完善。这些服务提供从磁盘到缓冲池等一系列压缩,从而显著节省了内存和磁盘空间(在某些模式下,这些服务在内部测试的平均结果为磁盘节 省达到 65% 以上),并实现了 I/O 系统的性能飞跃(有些数据仓库系统不是 I/O 式的;但消除内存或 CPU 瓶颈也是很容易的)。压缩的好处还有很多。

    考虑一下压缩的其他一些不那么明显的好处。相信我,压缩的好处不仅仅是节省磁盘空 间。比如我们的备份 —— 压缩不仅让备份更小,并且让它运行得更快,因为您备份的数据页减少了。考虑一下 Q/A 和测试环境。如果在磁盘和内存缓冲区中压缩数据,就可能让更多数据进入缓冲区。这不仅意味着性能的提升,还让 RUNSTATS 和 REORG 等维护操作运行得更快,因为它们也是基于页面的操作。考虑所有这些因素以及 DB2 能够在一个数据页中支持超过 2,300 个行(在 DB2 8 仅能支持 255 个行),它们是消除 I/O 瓶颈的有力武器。最后,考虑您的储存的环境回报;压缩不仅为您节省资金,它还减轻您的 IT 解决方案对生态环境的影响。压缩数据不仅节省磁盘空间,而且对环境是有益的!Storage Optimization 特性在 SAP OEM DB2 合同、InfoSphere Warehouse Enterprise Edition、InfoSphere Balanced Warehouse 或 IBM Smart Anlaytics System 中是免费的。在 DB2 Enterprise 中,这个特性包仅能通过 PVU 许可获得。

许可和定价

您可以通过以下方式之一获得 DB2 Enterprise 的许可:

  • Processor Value Unit License (PVU):您必须为需要安装软件的服务器或虚拟化会话购买相关的所有 DB2 和 IBM 的处理器价值单元定价。该许可允许任意数量的用户和设备访问 DB2 Enterprise。不同的 平台和虚拟化技术 有不同的要求,这允许您在子容量环境中使用该版本。如果您将 DB2 Enterprise 注册为 warm 备份服务器(例如,在 HADR 配置中),那么仅需为它获取 100 个 PVU。

  • Authorized User License (AU):您必须购买所有将访问特定 DB2 Enterprise 服务器的 authorized users (AU)。(查看 DB2 Express 小节了解关于 AU 的定义)。DB2 Enterprise 对必须获得许可的 AU 有最低数量限制,与 DB2 Express 和 DB2 Workgroup 的 AU 相似。不过,DB2 Enterprise 与 DB2 Express 和 DB2 Workgroup 的最少 5 个 AU 不同,您至少需要为服务器或虚拟化会话的每 100 个 PVU 获取 25 个 AU。需要注意的是,每个安装都有一个平衡点,超过该点之后通过 PVU 方法获取服务器许可将得到更多益处。如果您将 DB2 Enterprise 注册为备份服务器(在 HADR 配置中),那么仅需要为它获取 25 个 AU(100 PVU 所需的最少数量)。

    我们假设您在一个带有一个 4 核处理器的基于 IBM Power 5 QCM 的 System p 服务器上运行 DB2 Enterprise。在这个例子中,您至少要购买 50 个 AU 许可,因为这个服务器的总 PVU 为 200 PVU(200 PVU/100 PVU = 2 x 25 AU)。如果您在一个带有一个 6 核处理器的 Sun Niagara 服务器上运行 DB2 Enterprise,如果该服务器的 PVU 为 180,那么您至少需要购买 50 个 AU 许可,并且当您跨越了下一个 100 PVU 阈值时,就必须重新确立最少的用户数。

    另一个例子是,如果有 75 位用户需要访问两个独立的 DB2 Enterprise 服务器,那么需要为这 75 个 用户一共购买 150 个 AU 许可:2 服务器 x 75 AU/服务器 = 150(75 AU/服务器)。不过,如果这两个服务器都有 4 个基于 Intel XEON 的双核处理器,则至少需要 200 个 AU 许可(每个服务器 100 个 AU):(((4 槽 x 2 核 = 8 核)x 50 PVU/核 = 400 PVU)/100 PVU = 4)x 25 AU = 100 x 2 服务器 = 200 AU。

在 DB2 9.5 与 DB2 9.7 中的区别

DB2 Enterprise 9.5 和 DB2 Enterprise 9.7 的许可和打包没有重大改变。

考虑采用……

对 于需要巨大灵活性(例如,使用表分区)和可伸缩性(例如,没有 PVU 或 RAM 限制)的应用程序,我们建议考虑使用 DB2 Enterprise。当需要丰富的扩展时,例如高级安全控制服务(比如基于标签的访问控制)、储存优化服务(比如压缩)和透明的可伸缩活动/活动 OLTP 集群(比如 DB2 pureScale)等,也应该使用 DB2 Enterprise。使用 DB2 Enterprise 时,除了最佳的资源平衡和可用特性之外,还有一些容量计划考虑事项。

运行在 DB2 Enterprise 上的酷特性

Bang & Olufsen (B&O) 是当今全球最有名的高端音频设备制造商之一。该公司由 Peter Bang 和 Sven Olufsen 于 1925 年在丹麦成立,它不仅在音质方面声名远播,而且产品的外观也非常完美。B&O 将他们的 SAP 实现迁移到 DB2。Peter Munk(B&O IT 的总裁)如是说:“使用 IBM 的产品之后,我们的业绩不再出现问题,我们可以专心研究业务的下一个阶段。”毫无疑问,该公司在 IBM 产品的帮助下实现了最酷的音响设备设计!

开发人员请留意……

IBM 为应用程序开发和测试人员提供一款名为 Database Enterprise Developer's Edition (DEDE) 的特殊的产品。这是一款享受价格折扣的产品,它让个人能够访问大部分 DB2 特性和版本,以及 Informix 产品和 DB2 Connect,但仅能用于开发、评估、演示和测试应用程序项目。它的许可是以个人为单位的。它可能是应用程序开发生命周期的最省钱解决方案,但具体情况 取决于用户的数量。

您可以在开发、质量保证(Q/A)、用户认可和其他非生产环境中使用 DEDE。此外,具有 DEDE 许可的开发和测试人员可以连接到任意非生产 DB2 服务器,从而为您提供一个节约时间的高效环境。

结束语

如您所见,DB2 不仅可以运行在许多平台上,而且具有灵活的版本结构,使您能够为解决方案找到合理的价格和正确的服务。在 DB2 9.7 中,您将发现所有版本都包含更多的特性;从收益的角度考虑,增值是多多益善的。

DB2 的版本递增是无缝的,因此您可以随着业务的增长选择合适的版本。不管您是通过 Internet 使用 SMB 跟踪销售的人员,还是移动解决方案提供商,或者是试图通过分析销售数据正确分发产品的财富 500 强企业,您都可以找到适合您的 DB2 版本!

加载中
返回顶部
顶部