DB2 产品
DB2 的不同版本
DB2 9 提供了适于所有企业的数据管理解决方案。没有其他数据库管理系统能够在性能、可用性、可伸缩性和可管理性方面达到 DB2 9 的水平。但是,DB2 有不同的版本,每种版本适合市场的不同部分。DB2 基础考试要求您了解不同的 DB2 产品和版本,所以本节讨论这个问题。
下面的图显示了所有可用的 DB2 发行版。从图中可以看出 DB2 的发展:每个版本都包含低一级版本的所有功能和特性,并添加了新的特性和功能。Linux、UNIX 和 Windows(luw)平台上的代码有大约 90% 是相同的,在每种操作系统上有 10% 的专用代码,用于使数据库与底层操作系统紧密地集成。例如,使用 AIX 上的 Huge Pages 或 Windows 上的 NTFS 文件系统。
DB2 系列中还有两个成员没有显示在下图中:DB2 for System i 和 DB2 for System z。这些数据库基于不同的代码基础,专门针对运行它们的底层操作系统和硬件架构做了调整,它们的 SQL 可移植度达到 95%,这使它们成为 DB2 系列的成员。例如,DB2 for System i 构建在 i5/OS 操作系统中。DB2 for z/OS 利用了 System z 服务器上的硬件耦合器(Coupling Facility),因此与使用 “shared-nothing” 方式的 DB2 luw 相反,它采用 “shared-everything” 的方式。
DB2 版本
这些版本的详细许可协议超出了本系列教程探讨的范围,但是需要注意在您所购买的 DB2 Enterprise 中有一些可以免费使用的 DB2 9 功能特性。如果 DB2 Express 或 DB2 Workgroup 中没有免费包含某一功能,那么(在大多数情况下)可以通过附加的 Feature Pack 购买这一功能。
例如,在 DB2 Express 9 和 DB2 Workgroup 9 中,可以通过购买以下 Feature Pack 向数据服务器中添加功能:
纯 XML(pureXML) 提供 DB2 9 新的 XML 数据列类型和索引。DB2 9 提供一种混合型引擎,它既可以按照关系方式操作和存储基于 SQL 的数据,又可以按照层次化方式操作和存储基于 XML 的数据。 高可用性 提供在线表重组、Tivoli System Automation for AIX and Linux 以及高可用性灾难恢复(High Availability Disaster Recovery, HADR)功能。这在 DB2 Enterprise 中是免费提供的。 性能优化 这是使用多维聚集表(Multidimensional Clustering, MDC)、物化查询表(Materialized Query Tables, MQT)和查询并行性所需要的特性。这在 DB2 Enterprise 中是免费提供的。 负载管理 提供 Connection Concentrator、DB2 Query Patroller 和 DB2 Governor。Connection Concentrator 和 DB2 Governor 特性在 DB2 Enterprise 中是免费提供的。
DB2 Enterprise 9 附带以下附加特性来扩展这个 DB2 版本的功能:
纯 XML(pureXML) 提供 DB2 9 新的 XML 数据列类型和索引。DB2 9 提供一种混合型引擎,它既可以按照关系方式操作和存储基于 SQL 的数据,又可以按照层次化方式操作和存储基于 XML 的数据。 高级访问控制(LBAC) 用于提供扩展的安全架构,在这个架构中基于角色对数据进行访问。 地理数据管理特性 用于对各种应用程序中使用的空间和球面数据模式进行建模,比如气候分析、国防以及在分析中需要考虑地球曲率的应用程序。 存储优化特性 用于行级和备份/恢复压缩,可以显著提高操作的速度并使数据的存储开销最小化。 性能优化特性 提供在 DB2 Enterprise 服务器环境中使用的 DB2 Performance Expert 和 DB2 Query Patroller 产品。
DB2 Everyplace
移动计算的真正力量并不在于移动设备本身,而是在于能够利用来自其他来源的数据。DB2 Everyplace 将 DB2 的强大力量注入了移动设备,能够与其他系统进行数据同步,从而让企业数据进入移动员工的口袋,让他们能够从远程位置更新企业数据。
DB2 Everyplace 不仅仅是一种移动计算基础设施。它是一个完整的环境,包含了构建、部署和支持强大的电子商务应用程序所需的工具。DB2 Everyplace 提供一个 “指纹” 引擎(大约 200 KB),其中包含所有的安全特性,比如表加密和提供高性能的高级索引技术。它可以在当今最常见的各种手持设备上顺利地运行(提供多线程支持),比如:Palm OS、Microsoft Windows Mobile Edition、任何基于 Windows 的 32 位操作系统、Symbian、QNX Neutrino、Java 2 Platform Micro Edition(J2ME)设备(比如 RIM 的 Blackberry pager)、嵌入式 Linux 发布版(比如 BlueCat Linux)等等。
如果需要在资源有限的设备上使用关系引擎和同步服务,就应该使用 DB2 Everyplace。对于偶尔连接的笔记本电脑用户,如果他们的应用程序不需要 DB2 Everyplace 引擎中没有的特性(比如触发器),那么也可以考虑这个产品。
在 DB2 8 中,DB2 Everyplace 是作为 Mobility-on-Demand 特性提供的。在 DB2 8 或 DB2 9 中遇到这个特性时,可以认为这两个产品提供的功能是相同的。尽管在版本之间打包方式不同,但是 DB2 Everyplace 和 DB2 Mobility-on-Demand 为环境提供相同的功能、特性和能力。
在 DB2 9 中,Mobility on Demand 由 DB2 Enterprise 免费提供。DB2 Express 和 DB2 Workgroup 用户需要购买 DB2 Everyplace Enterprise Edition 来获得这些功能。
DB2 Personal Edition
DB2 Personal Edition(DB2 Personal)是单用户 RDBMS,运行于低价的商用硬件桌面计算机上。DB2 Personal 可以用在基于 Windows 和 Linux 的工作站上。DB2 Personal 包含 DB2 Express 的所有特性,但是有一个例外:远程客户机无法连接运行这个 DB2 版本的数据库(但是,具有 Control Center 的工作站可以连接这些数据库来执行远程管理)。因为 “DB2 就是 DB2”,为 DB2 Personal 开发的应用程序也可以在 DB2 的任何其他版本上运行。例如,可以使用 DB2 Personal 开发 DB2 应用程序,然后将它们部署到运行 DB2 Enterprise 9 for AIX 的生产环境中。
DB2 Personal 既适用于不连接网络的 PC,也适用于连接网络的 PC。在这两种情况下,它为用户提供了强大的数据存储,或者提供了数据库存储设施并能够连接到远程 DB2 服务器。
偶尔连接的用户可以利用 DB2 内置的复制特性和 DB2 Control Server 设置一个同步的环境,让移动员工可以与企业保持联系。当然,这只适合笔记本和某些工作站的用户,比如那些运行销售点(point-of-sale,POS)应用程序的用户。
DB2 Express - C
DB2 Express - C 其实 不算是 DB2 系列的一个版本,但是它提供了 DB2 Express 的大多数功能。2006 年 1 月,IBM 发布了这个特殊的 DB2 免费版本,可以用于基于 Linux 和 Windows 的操作系统。DB2 Express-C 是为合作伙伴和开发社区设计的,但是正如您知道的,它几乎可以应用于任何地方。DB2 Express - C 引人注目的一个特点是:它没有其他厂商发布免费版本时通常会设置的限制。在有限制的方面,它也比其他厂商的免费系统宽松得多。
例如,DB2 Express - C 没有数据库大小限制,而且可以处理 64 位内存模型。DB2 Express-C 非常适合开发人员和中小型应用部署、学校社区等等。DB2 Express-C 具有 DB2 Express 的全部灵活性和健壮性,但是没有 DB2 Express 付费版本的一些扩展特性。DB2 Express-C 中不 包含的特性包括:
DB2 Express Feature Pack 中的特性 —— 例如,高可用性灾难恢复(HADR)
数据复制捕获
24x7 IBM Passport Advantage 支持模型
如果希望在自己的环境中利用这些特性,那么至少需要购买 DB2 Express。
DB2 Express Edition
DB2 Express Edition(DB2 Express)是一种功能全面的支持 Web 的客户机/服务器 RDBMS。DB2 Express 可以用于基于 Windows 和 Linux 的工作站。DB2 Express 提供一个低价的入门级服务器,主要用于小型企业和部门的计算任务。它的功能与 DB2 Workgroup 相同,但是在服务器上可以安装的内存和价值单元(等于一个服务器处理器核心的能力)数量方面与 DB2 Workgroup 有区别。
可以添加额外特性来提供扩展的功能(比如 DB2 Enterprise 中的一些功能),而不需要购买相应的版本。本教程前面描述了 DB2 Express 9 可用的 Feature Pack。
DB2 Express 可根据由运行应用程序的处理器决定的价值单元发放许可证,或者以授权用户数量为标准发放许可证。授权用户是 DB2 9 的一个新概念,它代表经过注册能访问环境中单一数据服务器上的服务或数据的用户。例如,如果有一个用户需要访问两个不同的 DB2 Express 9 数据服务器,而且这个环境要求按照授权用户发放许可,那么这个用户需要两个 DB2 Express 授权用户许可证(每个服务器一个)。
DB2 Express 在企业中可以扮演许多角色。它非常适合那些需要完全成熟的关系数据库的小型企业。他们可能不需要某些更成熟或更重要的应用程序那样的可伸缩性,但是他们希望存在一个企业级数据库来支撑其应用程序,在需要时,可以轻松地扩展此应用程序而不必进行任何修改。注意,针对 DB2 的任何版本编写的应用程序都可以轻松地移植到任何分布式平台上的另一个版本。
DB2 Workgroup Edition
DB2 Workgroup Edition(DB2 Workgroup)是一种功能全面的支持 Web 的客户机/服务器 RDBMS。它可以用于所有支持的 UNIX 版本、Linux 和 Windows。
DB2 Workgroup 提供了一种低价的入门级服务器,主要用于小型企业和部门的计算任务。在功能方面,它支持与 DB2 Express 相同的所有特性。可以添加额外特性来提供扩展的功能,比如 DB2 Enterprise 中的那些功