在 IBM Lotus Notes and Domino 8.5 中使用 DAOS 实现存储和服务器成本节省

在本文中,我们将讨论 IBM® Lotus Notes® 和 IBM Lotus® Domino® 8.5 中可以用来降低 Lotus Domino 服务器存储总成本的特性。我们还将简单介绍如何节省除存储成本以外的更多成本。为了演示具体的实际成本节省,我们在 Lotus Domino 域中实现了这些特性。

Andrea Waugh-Metzger, Collaboration Evangelist, IBM

Andrea 是 IBM WPLC 产品开发领域的 Collaboration Evangelist 和主题专家。她从 2006 年开始在 Lotus Notes 和 Lotus Domino 技术方面担任各种要职。最近两年来,她一直帮助顾客理解如何使用 Lotus Notes 和 Lotus Domino 以及社会网络工具整合分散的员工,应对业务挑战并提高生产力。可以通过 andrea_waugmetzger_@us.ibm.com 联系她。



Gary Rheaume, 首席架构师, IBM

Gary Rheaume 是 IBM Lotus Domino 附件和对象服务 (DAOS) 的首席架构师。他在编程、存储技术、数据库应用程序方面有广泛的背景。除了跟踪和减少不必要的 I/O 之外,Gary 喜欢与家人在一起,喜欢弹奏吉他和手风琴。可以通过 gary_rheaume_@us.ibm.com 联系 Gary。



Patrick Mancuso, 首席架构师和开发人员, IBM

Patrick 于 1984 年毕业于宾夕法尼亚大学并获得计算机科学学位,并开始效力于 IBM。之后的几年里,他在剑桥为 Lotus Software Development 开发了几个项目,以及 NotesPump/LEI、DECS、Domino/DB2 和 Domino。最近,他成为 IBM Lotus Domino DAOS 特性的架构师和开发者。可以通过 patrick_mancuso_@us.ibm.com 联系他。



2009 年 6 月 02 日

Lotus Domino 8.0 和 8.5 服务器版本主要针对整体存储进行了改进。这些版本包括能够显著降低 Lotus Domino 环境总体拥有成本 (TCO) 的技术。通过这些版本,Lotus 开发人员仔细地筛选出了最有利于降低 TCO 的目标:磁盘空间、存储成本、I/O 操作和操作维护成本。

Lotus Domino 8.0 和 8.5 中的这些增强可以从以下几个方面改进总体拥有成本:

  1. 写入磁盘的字节数更少。用户可以大大降低提供相同服务水平所需的磁盘空间,这样执行相同的任务需要的服务器磁盘空间更少。
  2. 磁盘 I/O 操作更少。除了上一条中提到的写入内容更少外,对于某些使用情况,有些磁盘操作也可以省去。
  3. 附件分散在隔离的存储空间中。附件是降低磁盘存储量的一个重要方面。
  4. 操作维护的改进。尽管 Lotus Domino 环境的操作成本通常较低,但备份、存储和维护方面的改进进一步降低了维护成本,具体如下:
    • 降低了存储数据的总量,这降低了备份成本
    • 降低了备份时间,因为附件所用的单独存储空间可以进行增量备份
    • 降低了视图重建时间
    • 降低了 Lotus Notes 数据库碎片整理所需的时间

在我们开始讨论如何在 Lotus Domino 环境中应用这些改进之前,让我们确定您已经很好地理解了组成 Lotus Notes 数据库的组件。Lotus Notes 数据库由几个不同类型的元素组成。这些元素包括以下内容:

  • 设计元素。在 Lotus Domino Designer 中显示的元素:表单、视图、代理等等。这些元素往往大小固定,但这个大小可能很大(例如,Lotus Notes 8.5 Mail 模板几乎有 30 MB)。
  • 视图。Lotus Domino 在视图中保存数据,例如收件箱视图,视图在 Lotus Notes 数据库中是一个单独的元素。如果数据库有许多视图,尤其是如果有许多带有可排序的列标题的视图,则该结构会占用大量磁盘空间。
  • 文档。该元素包括邮件的正文等。
  • 附件。

Lotus Domino 8.0 和 8.5 中的新附件直接处理这些元素。在接下来的几节中,我们将帮助您理解每个元素,并展示如何利用它们,以便您能在 Lotus Domino 环境中大大降低存储空间占用。

Lotus Domino 8.0 和 8.5 中新的节省存储特性

正如上文所述,在 Lotus Notes 数据库中有 4 个影响 Lotus Domino 服务器总存储量的主要元素:设计元素、与视图相关的数据、文档数据和附件。Lotus Domino 8.0 和 8.5 提供了对这 4 个元素的直接增强。

压缩数据库设计

设计元素定义数据库使用的视图和表格、数据库逻辑、验证规则、代理、LotusScript® 等。尽管 Lotus Domino 可以使用 Single Copy Template 功能从每个 Lotus Notes 数据库分离设计元素,但许多用户还是选择将它们打包到数据库中(这也是默认设置)。这种方法让数据库实现自包含,并且使之易于管理。数据库设计元素所占用的空间的大小取决于应用程序的复杂性,但是占用的空间量会很大。

压缩数据库设计减少了存储设计元素所需的空间。减少的空间为每个数据库都产生了固定的节省。例如,提供的 Lotus Notes 8.5 邮件模板对每个邮件文件使用近 30 MB 的磁盘空间。使用设计压缩功能,该标准将降低到 11 MB,每个邮件文件节省了近 19 MB。该功能需要 ODS 48,并通过数据库属性启用。该功能可用于客户端和服务器;它还帮助提供配额缓解(quota relief)。

图 1. 高级属性 – 支持设计压缩
高级属性 – 支持设计压缩

视图优化

Lotus Notes 数据库中的每个视图都存储底层文档数据的摘要,允许用户快速轻松地导航文档。例如,邮件文件的 Inbox 视图使您能够快速查看收到的邮件。此外,Lotus Notes 视图设计器可以将视图变得更加有用 —— 支持用户对各个列进行排序。以使用 Inbox 视图为例,该视图使您能够根据发件人、主题、数据、大小等进行排序。对于每个可排序的列,Lotus Notes 构建了一个特定于语言的排序索引。重新构建视图时,这些索引会占用服务器上的磁盘空间和处理时间。

在 Lotus Domino 8.0 中,您可以将视图中每个可排序的列指定为在需要(或使用)的时候才重新构建排序索引,以及在一段时间不用之后应该丢弃视图。该功能需要 ODS 48,视图设计器使用数据库的列属性支持该功能。该功能可以同时用于客户端和服务器,还能提供配额缓解。图 2 展示了该功能。

图 2. 视图列属性 – 将索引创建延迟到第一次使用时
视图列属性 – 将索引创建延迟到第一次使用时

文档数据压缩

数据文档是大部分应用程序的实际内容,如邮件消息。数据文档压缩降低了存储应用程序数据所需的空间。该功能在 Lotus Notes 和 Domino 8.0.1 中引入,也需要 ODS 48。它通过数据库属性启用,可同时用于客户端和服务器,还提供配额缓解。见图 3。

图 3. 高级属性 – 支持数据文档
高级属性 – 支持数据文档

Lotus Domino 附件和对象服务

我们讨论的上一个在 Lotus Domino 8.5 中引入的新功能是 Lotus Domino 附件和对象服务 (DAOS)。Lotus Domino 服务器使用 DAOS 在文件级别上节省了大量空间,它在同一个服务器上的数据库(应用程序)之间共享被标记为相等的数据。文档附件是 Lotus Domino 中第一个使用 DAOS 功能的组件。

在使用 DAOS 的数据库中,Lotus Domino 不再在文档内部存储附件。支持 DAOS 的服务器在 DAOS 存储库中保存一个附件副本,将附件替换为指向该 DAOS 对象的引用。如果附件存在于多个数据库中,该附件在每个服务器分区中仅存储一次,同时增加引用计数。因此,当将附件发送给同一服务器上的多个用户时,磁盘空间使用量将大大降低。与磁盘空间降低相对应的是,与 DAOS 相关的成本也将大大降低。DAOS 还可以在 Lotus Notes 数据库之外的设备中存储附件。在我们的内部邮件性能基准测试中,DAOS 仅占整个 I/O 的 2% 以下(见后文的实际示例)。由于这种分离,DAOS 可以使用更低成本的磁盘而不影响整体响应时间。

还有一点很重要,要注意附件整合不仅限于邮件数据库;它可以作用于任何支持 DAOS 服务器的 Lotus Notes 数据库。该功能需要 ODS 51(Lotus Domino 8.5),通过数据库属性启用。该功能如图 4 所示,仅能用于服务器。

图 4. 高级属性 – 支持 DAOS
图 4. 高级属性 – 支持 DAOS

实际示例

在发布 Lotus Domino 8.5 版本之前,节省空间特性在 IBM 的两个领域中得到实现。这种实现使开发人员能够更好地理解特性的工作方式,并能收集实际 Lotus Domino 部署的绩效指标。以下几节将概述实现示例并记录获得的积极作用。

IBM 域实现

IBM Global Services (IGS) 运行 IBM 的主产品 Lotus Domino 域。该实现包括全世界 18 个 Lotus 域和 1000 多个服务器,有近 500,000 个用户。为了测试该域中的存储节省,我们执行了三个测试。这些测试和结果如下所示。

测试 1:IBM Research 专用邮件服务器

第一个测试的服务器是 IBM Research 部门专用的 Lotus Domino 邮件服务器。该服务器有 112 个活动用户邮件文件,以 64 位模式运行 IBM AIX 5.3.7.7。在升级或启动任何上述特性前,该服务器在 Lotus Domino 数据目录中有 65.9 GB 的 NSF 数据。

将此服务器升级到 Lotus Domino 8.5 并启用 DAOS 后,结果如表 1 所示。

表 1. IBM Research 专用邮件服务器结果
指标结果
数据目录中的 NSF 数据23.9 GB
DAOS 中的 NLO 数据25.3 GB
数据目录占用存储降低 63%
总占用存储使用量降低 25%
I/O平均 I/O 量降低 8%
每秒的平均 I/O 量降低 1%
相对 I/O 率DAOS 磁盘占 I/O 的 1.3%

测试 2:Lotus Domino 应用服务器

如前所述,DAOS 的好处不仅限于邮件文件。因此,第二个进行测试的服务器同样是 IBM Research 部门专用的 Lotus Domino 应用服务器。该系统运行 32 位模式的 Microsoft® Windows 2003,实现 DAOS 之前在 Lotus Domino 数据目录中有 17.29 GB 的应用程序数据。

将该服务器升级到 Lotus Domino 8.5 并启用 DAOS 之后,结果在表 2 中详细列出。

表 2. Lotus Domino 应用服务器结果
指标结果
数据目录中的 NSF 数据9.85 GB
DAOS 中的 NLO 数据5.28 GB
数据目录占用存储降低 43%
总占用存储使用量降低 12%
I/O未测量
相关 I/O 率未测量

测试 3:Lotus Domino 邮件服务器

第三个测试也运行在 IBM Global Services 操作的邮件服务器中,但是有更多的活动用户邮件文件(非 IBM Research 专用)。因此,该服务器提供更加直观的平均邮件服务器视图。该系统以 64 位模式运行 AIX 5.3.7.7,Lotus Domino 数据目录中有 70.9 GB 的数据。

将该服务器升级到 Lotus Domino 8.5 并启用 DAOS 之后,结果在表 3 中详细列出。

表 3. Lotus Domino 邮件服务器结果
指标结果
数据目录中的 NSF 数据40.3 GB
DAOS 中的 NLO 数据15.4 GB
数据目录占用存储降低 43%
总占用存储使用量降低 21.5%
I/O平均 I/O 量降低 12.99%
每秒平均 I/O 上升 16%
相关 I/O 率未测量

业务合作伙伴实现

最近一次部署涵盖了 IBM 业务合作伙伴所做的初始测试。该测试的目标服务器上放置了整个公司的归档邮件。归档邮件存储在主服务器上,较旧的文件迁移到专用归档服务器的邮件归档中。尽管该归档服务器的直接用户活动率很低,但涉及的数据量相当大。

在本测试中,89 个邮件归档文件样本支持 DAOS。该系统运行 IBM OS 400®-V5R4M0,Lotus Domino 数据目录中有 87.3 GB 数据。

将该服务器升级到 Lotus Domino 8.5 并启用 DAOS 之后,结果在表 4 中列出。

表 4. 归档邮件服务器的测试结果
指标结果
数据目录中的 NSF 数据16.9 GB
DAOS 中的 NLO 数据334.6 GB
数据目录占用存储降低 80%
总占用存储使用量降低 41%
I/O未测量
相关 I/O 率未测量

表 4 中展示的数字是 IBM 业务合作伙伴的实时数据。当前归档文件的大小超过了 25 TB。如果我们预测整个存储有 41% 的减少,DAOS 一项就可以节省 10 TB 以上的磁盘空间。此外,数据目录占用中 80% 的降低大大减少了备份的大小,完成备份所需的时间更少。

观察结果

从这些示例中可以看出,DAOS 可以大大降低数据目录的大小,在很多情况下,可以降低整个磁盘存储的大小。DAOS 可以实现更低成本的存储,这将大大降低存储成本。还要特别注意启用 DAOS 后,测试 1 和测试 3 中的磁盘 I/O 率也得以降低。由于磁盘 I/O 对许多客户的 Lotus Domino 服务器性能都是一个限制因素,因此 I/O 率的降低将带来极大好处。

为了帮助您了解 DAOS 的好处,DAOS Estimator 工具 可以查看域中所有服务器的成本节省。当该工具在整个 IBM domain Lotus Domino 服务器上运行时,我们可以得到表 5 中的结果。

表 5. 运行 DAOS Estimator 工具的结果
指标结果
压缩前数据目录中的 NSF 数据 压缩后数据目录中的 NSF 数据 压缩的总节省131.6 GB
87.9 GB
43.7 GB 或 33.2%
启用 DAOS 之前数据目录中的 NLO 数据 DAOS 中的 NLO 数据 DAOS 的总节省38.4 GB
30.2 GB
19.3 GB 或 14.7%
数据目录总占用降低 70.8%
总占用降低 47.8%

从工具结果中可以看到,IBM Global Services 可以在 IBM 域实现极大的节省。在整个域启用压缩和 DAOS 可以大大降低第一层的存储并能显著减少备份数量和其他服务器操作。


对其他操作的影响

因为 Lotus Domino 8.5 中的存储节省功能提供的节省十分明显,您可能想知道这是否会对您的 Lotus Domino 服务器带来一些影响。例如,如何影响备份和恢复特性?如何影响磁盘或处理器 I/O?需要更改管理员功能或方法吗?这些问题问得很好,您会发现,在极大地降低存储成本时,您并不需要付出巨大的代价。要进一步讨论该问题,让我们集中讨论两个客户常问的主要方面:备份和操作更改。

备份

在 Lotus Domino 环境中实现 DAOS 时,您可以更改备份配置和备份频率。DAOS 降低了 NSF 数据量大小,还降低了备份量并减少了备份时间。例如,在 IBM 域中,实现了 DAOS 之后,NSF 占用从 64 GB 下降到 23 GB,节省了 64%。因此,该服务器的整个备份量 (包括 NSF 和 NLO 数据)也从 64 GB 降低到 25 GB,整体节省了 61%。因此,IBM 能够修改备份时间和备份量需求以适应降低的数量。

当然,环境中整体备份数据量的降低量取决于 DAOS 存储库中的独特附件。该数量根据环境使用的附件的不同而变化。

该范围见表 6。表 6 展示了在环境中实现 DAOS 后 IBM 域中一个服务器的持续备份。在完全实现 DAOS 之后,备份时间大大降低。只需要备份新附件,每天约 300 MB。您可以看到 IBM 从每周花 154 分钟备份 NSF 卷变成每周花 36 分钟备份 NSF 卷以及每天花 0.75 分钟备份 NLO 数据。在系统备份方面的时间节省是巨大的。

表 6. DAOS 降低了备份的数据量和持续时间
DAOS 降低了备份的数据量和持续时间

操作更改

本文介绍的存储节省特性的实现还可以对维护日程和服务器操作产生巨大影响。您知道,NSF 文件的大小影响着服务器操作,比如压缩和修复等。较小的 Lotus Notes 数据库减少了执行这些任务所需的时间,因此降低了维护时间甚至在服务器上进行维护的频率。

例如,压缩操作就像一个针对 NSF 文件的磁盘碎片整理工具。在 Lotus Domino 中,根据运行压缩操作时使用的算法,服务器不断将大组件(如附件)移动到 NSF 的末端,同时使用更小的组件填补得到的空间。该过程在 NSF 中的大组件和小组件之间重复进行。在所有的小的空隙填满之后,压缩将把较大的组件放到一端。该过程中,大组件需要移动多次,增加了在大 NSF 文件上运行压缩操作所需的时间。当您将大组件从 NSF 移动到 DAOS 中时,压缩操作不再需要操作这些组件,因此压缩操作所需的时间更短。


结束语

从我们展示的实际示例以及 Lotus Domino 8.5 支持的各种特性中可以看到,您可以在 Lotus Domino 环境中实现极大的节省。实现我们介绍的三个主要特性 —— 设计压缩、文档压缩和 DAOS,您就可以影响磁盘存储要求和整个操作成本。

此外,我们没有过多讨论的一个优点是,您现在可以选择将磁盘存储分区迁移到成本更低的存储器中。例如,过去的 Lotus Domino 数据库存储推荐标准中指出,由于数据访问频繁以及含有大型邮件文件的 I/O 需求,您应该将 Lotus Domino 数据存放在高端数据存储中,设备越多越好。但使用 DAOS 后,您可以将附件存储到更低成本的磁盘结构中,节省基础设施成本,由于对附件的访问通常较少,因此不需要很多 I/O 操作就能访问。

另一个好处是 DAOS 磁盘的 I/O 率,它影响 Lotus Domino 服务器的整个 I/O 要求。许多客户由于邮件过大而产生很高的 I/O 率和 “I/O 绑定”。将附件移出 NSF 存储之后,您可以看到 I/O 率得到降低,可以注意 DAOS 的相关 I/O 要求明显降低,从而可以将更多的 I/O 用于 Lotus Domino 数据库。

在 Lotus Domino 环境中看到的节省是真实的。在 IBM 中,我们能够节省大量的存储空间和操作时间。立即运行 DAOS Estimator 并获得节省吧!

参考资料

学习

获得产品和技术

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Lotus
ArticleID=393031
ArticleTitle=在 IBM Lotus Notes and Domino 8.5 中使用 DAOS 实现存储和服务器成本节省
publish-date=06022009