转载

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

数据增长简介

如今的企业数据增长非常快速,大型数据库需要使用更多的磁盘空间,响应速度也变得更慢,这些会影响关键任务应用程序的性能。借助 InfoSphere Optim Archive,企业可以使用 Optim 归档策略轻松地管理企业数据。归档策略的概念非常简单:您可以存档那些陈旧的、很少访问的数据,然后从数据库中删除这些已归档的数据。同时,最近的或最重要的数据仍然位于生产数据库中,为任务关键型操作提供服务,并保持最佳性能。因此,通过使用归档功能,企业可以有效地简化大型数据库,提高任务关键型应用程序的性能。

InfoSphere Optim Archive 可以帮助组织:

  • 管理应用程序数据和数据仓库的增长 ,实现更好的数据控制,并降低存储成本。
  • 应用业务规则和标准 ,更安全地隔离和归档历史数据并提高合规性。
  • 改进数据生命周期管理 ,以获得更高效的存储过程。
  • 使用一个可伸缩的解决方案 ,在应用程序、数据库、数据仓库、操作系统和平台中使用该解决方案。
  • 评估休眠数据 ,以确定应该通过 InfoSphere Guardium® Data Analyzer 的功能进行归档的数据。

IBM InfoSphere Optim Archive 包括以下特性:

  • 归档 :从数据库对相关的数据集进行归档,同时保留对已归档数据的访问,以实现合规性、分析或报告的目的。
  • 浏览 :提供一种不必将已归档数据恢复到某个数据库中就可以浏览它们的方法。您可以使用此特性在执行删除或恢复之前验证您的归档数据,甚至不必将数据恢复到某个数据库中就可以响应查询。
  • 删除 :从数据库中删除一整套已归档数据或已归档数据的子集。删除过程可以作为 Archive 流程的一部分执行,或推迟到稍后的某个时间,推迟到已经浏览和验证归档数据之后。
  • 恢复 :某完整的数据集或选定的已归档数据恢复到原始数据库或另一个数据库。您可以将数据恢复到相同的数据库,虽然数据模型可能已发生改变;或者将数据恢复到一个临时数据库中,以便对它们进行分析和报告。

回页首

InfoSphere Optim 数据增长场景

让我们假设以下情况:您是一家批发零售公司的 DBA,负责向零售视频商店销售 DVD。您公司的数据库 landscape 包括两个生产数据库,这些数据库支持在线零售交易。联合生产环境需要一个包含主要业务数据的 DB2 数据库和一个包含客户出货信息的 Oracle 数据库。您的公司正面临以下问题:DVD 业务日益增长,生产数据库中积累的大量数据将会影响任务关键型应用程序的性能和日常运营。您公司已经决定根据对日常生活中的数据访问的评估,对 6 年以上的所有客户订单进行归档。

为了让整个业务对象保持原封不动,我们想归档所有客户信息、他们的订单、已经被购买的每个物品项的细节、发货送货信息,以及与每个客户相关的发货指示信息。

我们有一个包含 DB2® 和 Oracle 表的联合生产环境,如下所示。为了实现完整的数据增长场景,需要建立一些关系来应对联邦数据环境中的情况。我们要在 Optim 目录中的 OPTIM_CUSTOMERS 与 OPTIM_SHIP_TO 之间建立一个跨数据库的关系。我们还要在 OPTIM_SHIP_TO 与 OPTIM_SHIP_INSTR 之间建立父子关系。下图中的虚线代表新的 Optim 关系。

因此,基于数据增长场景和 DB2 与 Oracle 之间的关系,我们想要存档 OPTIM_SALES、OPTIM_CUSTOMERS、OPTIM_ORDERS、OPTIM_DETAILS、OPTIM_ITEMS、OPTIM_SHIP_TO 和 OPTIM_SHIP_INSTR 表。本教程中引用的所有表都是 InfoSphere Optim 11.3 中附带的示例表,可以在配置 Optim DB Alias 时安装到您的数据库上。

图 1. DB2 表与 Oracle 表之间的关系

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

在归档数据后,我们将浏览已存档的数据,验证我们已存档了所有超过 6 年的订单,并验证从生产数据库中删除数据是否适当。在验证已归档的数据时,我们可以通过删除已归档的数据来精简生产数据库。在这种情况下,我们只从 OPTIM_ORDERS 及其相关 OPTIM_DETAILS 中删除已归档数据的子集,因为它们是过时数据,很少被访问。

最后,我们假设某个客户打电话询问已存档的旧订单。我们将从已归档的文件恢复这个特殊的订单及其相关细节,将它恢复到数据库中,以便客户服务代表可以查看订单的详细信息,处理客户的询价。

回页首

使用 Optim Designer 11.3 连接到 Optim 目录与 DB 别名

出于本教程之目的,让我们假设 InfoSphere Optim 11.3 解决方案已安装和配置在 Windows 上。从 Windows 桌面打开 Optim Designer 11.3,请牢记,要在 Windows 7 及其更高版本上以管理员的身份运行 Optim 解决方案。

一旦启动了 Optim Designer,系统会要求您连接到 Optim Connection Manager。InfoSphere Optim Connection Manager 是一个 Web 应用程序,它为 InfoSphere Optim 组件存储 Optim 目录连接信息。InfoSphere Optim Connection Manager 也被称为连接管理器。

在 Optim Connection Manager 窗口中输入以下验证信息:

用户名:admin

密码:admin

Optim Connection Manager 会自动连接到 Optim Directory。要确保成功连接到 Optim Directory,需要确保 OPTIMDIR 的旁边有一个绿色的复选标记。OPTIMDIR 是我们的 Optim Directory 的名称(使用该名称是出于本教程之目的)。扩展 Data Store Aliases,查看目前配置的数据库别名。您会发现已经为本教程配置了三个数据库别名,但没有一个目前被连接。我们主要使用 SOURCEDB 和 XE 数据库别名来展示 InfoSphere Optim 11.3 的归档功能。

图 2. 显示了 Optim Directory 和数据库别名的目录浏览器

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

右键单击 SOURCEDB 并选择 Connect 。一旦您成功连接到 SOURCEDB,就可以对 XE 重复这些步骤。

在成功连接到数据库别名后,展开 SOURCEDB 和 XE 数据库,并检查 Optim Schema 来寻找预先加载的 Optim 示例表及其定义。

回页首

在联合数据库环境中建立关系

在这一节中,我们将在联合数据库环境中建立关系,以便可以构建完整的业务对象,构建 Optim Access Definition 需要这些对象。

首先,我们将详细介绍如何在 OPTIM_CUSTOMERS CUSTSHIPTO 与 OPTIM_SHIP_TO 之间创建联合关系,我们将这个关系命名为 CUSTSHIPTO。右键单击 Optim Relationships ,然后选择 New Optim Relationship

图 3. 新建 Optim 关系

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

选择 SOURCEDB 作为父表的数据库,并选择 NEXT 。现在,在搜索栏的表搜索模式部分输入 Optim.% 并单击 Display Tables 。在结果部分填充了表之后,选择 OPTIM_CUSTOMERS 表作为父表并单击 NEXT

图 4. 新建 Optim 关系 — 选择一个父表

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

现在,选择 XE 作为子表的数据库并单击 NEXT 。在搜索栏的表搜索模式部分输入 Optim.% 并单击 Display Tables 。在结果部分填充了这些表之后,选择 OPTIM_SHIP_TO 表作为子表并单击 NEXT 。现在,我们已经成功地创建了新的 Optim 关系,对于这个 DB2,将以下内容输入到 Oracle Relationship 并单击 FINISH

名称:CUSTSHIPTO

描述:Optim_Customer to Ship_TO Relationship

图 5. 新建 Optim 关系 — 输入一个关系名称

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

现在,在 Relationship Editor 窗格中,右键单击 Expression mappings section 并选择 Add Expression 。这将允许我们从父表中选择一个列,并使用来自子表的一个列来连接它,以便建立关系。在我们的用例中,我们选择 CUST_ID 作为来自 Parent 列和 Child 列的列,并单击 OK

图 6. 新建 Optim 关系 — 添加一个表达式映射

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

通过选择 FileSave All 确保关系被保存。接下来,我们需要在 OPTIM_SHIP_TO 与 OPTIM_SHIP_INSTR 之间建立关系;该关系被称为 SHIPTSHPI。这些步骤类似于建立 CUSTSHIPTO 关系的步骤,但这次我们将选择 XE 作为我们的父表的数据库,并在搜索栏的表搜索模式部分输入 Optim.% ,然后单击 Display Tables

在将这些表填充到结果部分之后,选择 OPTIM_SHIP_TO 表作为父表,然后单击 NEXT 。我们将再次选择 XE 作为我们的子表的数据库。在搜索栏的表搜索模式部分输入 Optim.% ,然后单击 Display Tables 。在将这些表填充到结果部分之后,选择 OPTIM_SHIP_INSTR 表作为子表,并单击 NEXT 。像之前一样,提供一个有意义的名称来保存该关系。现在,在 Relationship Editor 窗格中,在 Expression mappings section 内右键单击并选择 Add Expression 。这一次,我们将选择 SHIP_ID 作为 Parent 列和 Child 列的列。

图 7. 新建 Optim 关系 — 添加一个表达式映射

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

查看 Relationship Editor,确保状态为 OK,这意味着关系已成功创建。请牢记选择 File > Save All 来保存在 Optim Designer 中的所有更改。

回页首

创建一个新的 Optim 归档访问定义

访问定义 是一个声明,它表明了开始表、相关表、关系和定义要处理的数据的选择标准。可以使用 Optim 访问定义来执行以下操作:

  • 在归档过程中识别哪些数据将被归档。您可以插入单个表的名称,请求 Optim 读取并提供所有相关表的名称。一个表被标识为开始表,或者标识包含哪些数据的表被第一个归档。
  • 标识在归档后包含哪些数据的表被删除。在删除数据之前,您可以设置一个选项来检查和更改您的选择。
  • 在归档数据的时候选择要遍历的关系以及遍历方向。
  • 定义选择要归档的相关行集合的标准,可以将此标准作为选择标准,基于数据年龄或一个或多个列中的值,或者将此标准作为开始表行的手动选定列表(被称为 Point 和 Shoot 选项)。
  • 在存档数据时设置将要创建的索引。
  • 在数据被归档或恢复时建立要运行的归档操作。
  • 回顾 Optim 遍历数据库的方式,确保对正确的数据进行了归档。

在创建一个 Optim Access Definition 之前,让我们将文件夹从 PSTDEMO 重新命名为更有意义的名称。右键单击 PSTDEMO 文件夹并选择 Rename 。作为最佳实践,推荐您将项目文件夹的名称重命名为目前正在处理的项目的名称。出于本教程之目的,我们将项目文件夹重命名为 InsightDG

图 8. 重命名项目文件夹

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

展开新的重命名 InsightDG 文件夹。我们将创建一个 Access Definition 来定义要归档的数据。出于本教程之目的,我们将构建一个 Access Definition 来归档超过六年的订单。右键单击 Access Definitions 并选择 New Access Definition 。为 Access Definition Name 输入一个有意义的名称并单击 NEXT 。选择 SOURCEDB 作为您的开始表的数据库别名并单击 NEXT 。在搜索栏的表搜索模式部分输入 Optim.% 并单击 Display Tables 。在将这些表填充到结果部分之后,选择 OPTIM_ORDERS 表作为开始表,然后单击 NEXT 。选择 Find Related tables 并单击 Display Tables ,确保 BOTH 选项被选中。在填充了所有相关表之后,单击 Select All > FINISH 。Access Definition Editor 将在 Optim Designer 的右窗格中打开,因此,请选择 OPTIM_ORDERS(开始表)并单击 Add Table Specifications

图 9. Access Definition Editor

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 9. Access Definition Editor

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

为了确定超过六年的订单,我们使用了 Optim 的内置函数 BEFORE (nD,nW,nM,nY),其中 D、W、M 和 Y 分别表示距离目前日期的日数、周数、月数和年数。因此,现在,在 Table Level 选项卡上的 SQL Where 子句字段中,输入 ORDER_DATE BEFORE(6Y) 。这会包含 OPTIM_ORDERS 表中 ORDER_DATE 超过六年(距离当前系统时间)的所有行,将它们归入一个归档文件中。单击 APPLY

图 10. 表规范 — 选择标准

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

在表规范编辑器中,您还可以为归档文件添加一个索引:切换到 Archive Index 选项卡,为我们的归档文件定义一个归档文件索引。拥有一个归档索引文件非常有用,当您从归档文件中搜索数据时,Optim 将检查是否可以使用一个归档索引来加快搜索。我们将在 ORDER_ID 上创建一个归档文件索引,从 Eligible Column 选择 ORDER_ID,将 ORDER_ID 添加到 Index Column。单击 APPLY > OK 继续。

图 11. 表规范 — 归档文件索引

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 11. 表规范 — 归档文件索引

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

现在,我们已经向我们的 OPTIM_ORDERS 开始表成功地添加了一个选择标准和归档索引。接下来,让我们定义在完成归档后想要删除的数据。在我们的场景中,我们希望从生产数据库的 OPTIM_ORDERS 和 OPTIM_DETAILS 表中删除已归档的数据,同时保持来自其他所有相关表的数据仍在生产数据库中,因为这些数据与当前业务操作相关。

要指定将要删除的数据,请单击 OPTIM_ORDERS 表,并在 Table Details 选项卡下,选中 Delete after archive 复选框。选择 OPTIM_DETAILS 表,在其 Table Details 选项卡下,选中相同的 Delete after archive 复选框。这指定了您打算在成功完成归档后删除的表。

图 12. Access Definition Editor — 删除选项

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 12. Access Definition Editor — 删除选项

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

在相同窗口中,向下滚动,然后选择 Transversal Options 选项卡。我们要确保为 Transversal Options 选中了选项 1 和选项 2。通过选择 Transversal Options 1,Optim 会确保在选中子行时,Optim 会包括其母行,以确保引用完整性。通过选择 Transversal Options 2,Optim 会确保在选中子行时,父行包含在从子行到父行的路径中。通过选择 File > SAVE ALL 来保存您所有的定义更改。

回页首

使用 Optim Designer 11.3 创建一个 Optim 归档服务

在这一节中,我们将了解如何创建一个 Archive Service 来执行实际的数据归档。右键单击 Archive Service 并选择 New Service

图 13. 创建一个新的 Archive Service 请求

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

首先,您需要为新的 Archive Service 提供一个有意义的名称,并选择 Archive 作为 Service Type。单击 NEXT

在下一个窗口中(选择一个访问定义),我们将从已填充的列表中选择我们之前创建的访问定义 (DG.ORDERS6Y),然后单击 NEXT

在接下来的窗口中,为 Archive File 输入一个名称,并单击 FINISH 。对于本教程,我们将 Archive 文件命名为 ORDERS6Y.AF 。现在,在 Archive Service Editor 窗格中,切换到 Server and Files 选项卡,并使用下拉功能将服务器从(本地)服务器切换到 WIN-RNTCM0CMQ7A。这是我们的 Optim 服务器的名称,该服务器已经配置好,并正在运行。在 Group 字段下,输入 ORDERSGP 作为组名称。该组可以充当一个标签,这样您就可以关联 Archive 文件,将它们用于未来的搜索标准。

图 14. 归档服务请求 — Archive Service Editor

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 14. 归档服务请求 — Archive Service Editor

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

现在,切换到 Delete 选项卡,并确保 Defer delete after archive 被选中。该选项允许您延迟删除已存档的行,给您一个机会,让您能够在从数据库中删除已归档数据之前验证这些数据。我们将在一个单独的小节中展示完整的删除过程。

图 15. 归档服务请求 — 显示了 delete 选项的 Archive Service Editor

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 15. 归档服务请求 — 显示了 delete 选项的 Archive Service Editor

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

最后,切换到 File Options 选项卡,确保 Compress target file 和 Compress archive index file 选项被选中。这些选项将确保我们的归档文件和归档索引文件都是使用 Optim 的压缩机制进行压缩的。使用 File > Save All 保存所有 Archive Service 更改。

回页首

使用 Optim Manager 11.3 运行一个 Optim 归档服务

Optim Manager 是操作客户端。它的目的是:在 Optim Services 为生产环境做好准备时,管理、调度和执行这些 Optim Services。这是一个 Web 应用程序,提供了必要的功能来执行和监视已经保存到 Optim 存储库的所有 Optim 服务。请确保您的 Optim Server 已经启动并正在运行,本教程假设您正在使用一个 Optim Server 来执行所有归档相关服务。在这里,是在 Windows 上使用 Optim Server 的。

打开 Optim Manager 11.3.0。在打开 Optim Manager Web 控制台之后,将以下内容输入到登录屏幕,并单击 Log In用户名: admin

密码:admin

切换到 Configuration 选项卡,检查 Optim Server 的状态。在 Status 字段下,确保其读数为 ONLINE,这表明您的服务器已成功启动并正在运行。接下来,切换到 Service Management 选项卡,查找我们已在 Optim Designer 中定义和创建的 Archive Service。在我们的示例中,选择 DG.SVORDERS6Y 服务,然后单击 RUN 。仔细检查下一个弹出窗口上的服务信息,然后单击 RUN

在启动 Archive Service 后,切换到 Service Monitoring 选项卡,检查您的 Archive Service 作业的状态,您应该看到它正在运行。这表明 Archive 作业目前正在运行。一旦发现作业的状态从 In-Progress 更改为 Successful,则表明 Archive 作业已运行完,现在可以查看 Archive Service 的结果了。

图 16. Optim Manager — 针对 Archive Service 的服务监视

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 16. Optim Manager — 针对 Archive Service 的服务监视

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

现在,我们已经准备好查看 Archive Service 的结果。单击 Service Summary 部分中可以查看 DG.SVORDERS6Y 的完整报告的链接,以查看刚运行完的 Archive 服务的完整细节。该报告会在一个新选项卡中打开,为您提供 Optim Manager 刚刚执行的 Archive 服务的详细总结。因为我们将在本教程中执行其他 Optim 相关的服务,所以请最小化 Optim Manager 浏览器,并最大化您的 Optim Designer 窗口。不要关闭 Optim Manager Browser。

回页首

使用 InfoSphere Optim Browse 实用工具验证 Optim Archive 服务

在 Optim Designer 中,定位 BROWSE Utility,单击该工具打开它。Optim Browse 实用工具将为您提供一种方式来浏览您的归档数据,无需将它们恢复到数据库中。在打开 Browse 实用工具后,定位您的 Archive File 并打开它。Browse 实用工具会以您可以直观理解和阅读的格式打开您的存档文件。表名称显示在左边,从该表中归档的数据行的总数显示在右边。

我们将浏览 OPTIM_ORDERS 表,更详细地查看行存档。OPTIM_ORDERS 表将打开一个称为 Browse Archive File Table Data 的新窗口。

作为一个最佳实践,最好查询数据库,了解我们的存档数据实际上是否是我们想要存档的那些数据。这可以通过直接连接到生产数据库并对数据运行一些查询(以确保行数是匹配的)来完成。

回页首

使用 Optim Designer 11.3 创建一个 Optim 删除服务

在使用 Optim 删除过程中,您可以选择从数据库中删除一个完整归档数据或删除归档数据的子集。有两种方法可以删除某个 Archive 的数据:

  • 作为存档过程的一部分 :在归档后,将从数据库中删除选定的数据集。
  • 推迟归档后的删除 :可以使用一个独立的删除请求,从数据库中删除选定的一组数据(这是我们在 Archive Service 小节中指定的方法)。

当 Optim 从数据库中删除数据时,它会将 Archive File 中已归档的行与数据库中的相应行进行匹配。如果这些行自上次存档后已在数据库中发生更改,则会跳过对该行的删除。这会确保将要删除的数据是我们已经归档的数据。

回想一下就会发现,我们只会删除 OPTIM_ORDERS 和 OPTIM_DETAILS 表中的数据,这些表是 SOURCEDB 数据库(DB2 数据库)的一部分。

现在来看一下 Optim Designer,在 Directory Explorer 中,转到您的 InsightDG 文件夹,右键单击 Delete Services 并选择 New Service 来创建一个新的删除服务。您需要为删除服务输入一个有意义的名称,并选择 Delete 作为 Service Type,然后单击 NEXT 。现在,确保 Optim directory 选项中的 Locate 文件被选中,在 Filters 部分,确保 Archive 选项被选中。单击 Display Files 来填充您的 Optim Directory 中的所有归档文件的完整列表。因为我们只创建了一个归档服务,所以您只能在填充列表中看到一个归档文件。选择 ORDERS6Y.AF Archive File 并单击 FINISH

图 17. 删除服务 — 选择一个源归档文件

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 17. 删除服务 — 选择一个源归档文件

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

现在,Delete Service Editor 窗口将在 Optim Designer 的右边窗格中打开。转到 Server and Files 选项卡,并将服务器从(本地)切换到 WIN-RNTCM0CMQ7A。接下来,切换 Strategy 选项卡,并确保在每个表的 Compare Row Contents 字段下都显示了 Compare——包括 LOB。这将确保在执行删除操作前,Optim 会将归档文件中的数据与数据库中的数据行进行逐行比较。只有这些行与归档文件中的相应行完全匹配时,才会从数据库中删除这些行。不完全匹配的行将被丢弃,并记录在控制文件中。

通过 File > Save All 保存所有与删除服务相关的更改。作为另一个实际执行删除过程之前的最佳实践,请花一分钟的时间检查一下您将从表中删除的总行数,在完成删除过程后再次执行此操作,您可以再次查询这些表,确保删除了正确的行数。

回页首

使用 Optim Manager 11.3 运行一个 Optim 删除服务

从新打开 Optim Manager 浏览器窗口,并选择 Service Management 选项卡,查看您新建的删除服务。选择您的删除服务;在这里,删除服务的名称是 DG.DELORDERS6Y。单击 Assign Server 按钮来为删除服务分配一个服务器。最初,不会给任何新作业分配任何服务器,因为客户通常有多个 Optim 服务器可用于 Optim 服务。在分配一个 Optim 服务器之后,删除服务的状态应该是 Ready 状态,已经为执行操作做好准备。接下来,选择您的删除服务并单击 RUN ,在下一个弹出窗口上再次单击 RUN 。在删除服务完成后,您可以打开报告,查看关于已从生产 SOURCEDB 数据库中删除的数据的全部细节。

一旦在新标签页中打开报告,可以通过向下滚动来查看过程摘要部分和过程细节部分,您会看到有关删除服务的所有信息。花费一些时间仔细阅读删除服务报告的其他每个部分,因为它们会提供使用 InfoSphere Optim 执行这个删除过程带来的其他成本节约。在审查完删除服务报告之后,请立刻关闭报告并最小化 Optim Manager Browser 窗口(不要关闭它)。

作为验证的最后一步,连接到您的数据库,查看是否从数据库和归档表中删除了正确的行数。

回页首

使用 Optim Designer 11.3 创建一个 Optim 恢复服务

通过使用 Optim 恢复过程,您可以恢复完整的 Optim 归档数据或该数据的子集,将它们恢复到原始数据库或临时数据库。有两种恢复数据的方法:

加载

  • 对于大量数据,可以提供比插入更高的性能。
  • 在加载过程中,可能需要在数据库上使用独占锁。
  • 插入或替换数据库中的现有数据。

插入

  • 插入过程将会对数据库执行 SQL 语句,性能不如加载。
  • 在插入过程中,数据库可提供给其他用户使用。
  • 在一个步骤中完成插入/更新处理。

对于这个 Optim 恢复场景,我们假设一名老客户打电话来询问他的几个以前的订单,这些订单已从生产数据库中删除。客服经理希望留住老客户,因此愿意分析以前的订单。所以,客服经理请求 DBA 将订单细节恢复到生产数据库中。

我们知道客户的订单 ID 是 9146,所以 DBA 会将整个订单及其细节恢复到 SOURCEDB 数据库的 OPTIM_ORDERS 和 OPTIM_DETAILS 表中。

我们首先需要在 Optim Designer 内部创建一个 Optim 表映射。表映射在一个插入或加载过程中对两个表进行识别和匹配,在恢复过程中会用到表映射。表映射还可以从处理中排除一个或多个表。要创建一个表映射,请在 InsightDG 文件夹下右键单击并 Table map > New Table Map

图 18. 表映射

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

在接下来的窗口中,为映射表输入一个有意义的名称,然后单击 NEXT 。对于表映射创建,应确保 Optim 目录中的 Locate 文件被设置,而且 File type 被设置为 Archive,然后单击 Display Files 。在填充了存档文件的列表后,请选择文件 ORDERS6Y.AF 并单击 FINISH

在右窗格中打开 Table Map Editor 窗口后,切换到 Table Map 选项卡并选择 Tables 选项卡。在 SOURCEDB 的 Target Data Store Alias 列下,选择 SOURCEDB 作为目标,对于 XE,选择 XE 作为目标。移动到 SOURCEDB 的 Target Schema 列并选择 OPTIM 作为模式,对于 XE,再次选择 OPTIM 作为模式。在 Default Target Qualifier 列下,只选择 SOURCEDB 行,以便将状态从 NO 切换到 YES。请记住,为了简便起见,我们使用我们的示例重点强调了一些技术步骤。

图 19. 表映射 — 表映射编辑器

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 19. 表映射 — 表映射编辑器

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

在 Table 选项卡中,选择 Source Data Store Alias 选项卡下的 SOURCEDB 并向下滚动。您会发现,在 Target Table 列下,表名称已经预先填写。因为我们只将数据恢复到已删除的 OPTIM_ORDERS 和 OPTIM_DETAILS 表,我们可以删除表名称的其余部分。所以,我们只删除了 OPTIM_CUSTOMERS、OPTIM_ITEMS 和 OPTIM_SALES,并确保在 Target Table Status 列下,不会对这些表使用读取操作。请参见下图,以帮助您理解。

接下来,选择 Source Data Store Alias 选项卡下的 XE 并向下滚动。您会发现,在 Target Table 列下面,表名称已经预先填写。因为我们不需要将任何数据恢复到 XE 表,所以可以删除两个表的 Target table 列下的条目。请参见下图,以帮助您理解。

图 20. 表映射 — 表映射编辑器显示了要从中删除数据的一些表

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 20. 表映射 — 表映射编辑器显示了要从中删除数据的一些表

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

通过选择 FileSave All 确保已保存了所有表映射更改文件。

现在,我们将创建 Optim 恢复服务。在 InsightDG 文件夹中,右键单击并选择 Restore Services ,然后选择 New Service

为恢复服务输入一个有意义的名称,然后单击 NEXT 。现在,单击 Display Files ,在归档文件列表获得填充后,选择 ORDERS6Y.AF Archive 文件并单击 FINISH 。在打开 Restore Service Editor 后,单击 ADD ,该选项位于 Global Selection criteria 选项的旁边,后者位于顶部中间地区。按照本教程的恢复示例的要求,我们将在此处添加将 ORDER_ID 9146 恢复到 OPTIM_ORDERS 和 OPTIM_DETAILS 表中的条件。

在打开 Global Selection Criteria 框后,查看 Column level 选项卡,找到 ORDER_ID 列,选择 Operator 列下的 “=” 操作符,并在 Selection Criteria 列中输入 9146 。单击 APPLYOK

图 21. 恢复服务 — 全局选择标准

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 21. 恢复服务 — 全局选择标准

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

回到 Restore Service Editor 中,选择 Archive File 选项卡并选择 ORDERS6Y.AF 归档文件,右键单击并选择 Use Global Selection Criteria 。这会关联我们已在上面步骤中定义的选择条件。

图 22. 恢复服务 — 应用全局选择标准

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 22. 恢复服务 — 应用全局选择标准

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

接下来,回到 Archive File 选项卡并选择文件 ORDERS6Y.AF,然后单击 ADD SERVICE 按钮。选择 Create a local (embedded) insert service 并单击 NEXT

最后,选择一个表映射,在表映射列表被填充后,选择 DG.TABORDERS 并单击 FINISH

图 23. 恢复服务 — 选择一个表映射

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

通过选择 File 和 Save All 保存您所有的恢复服务更改。

回页首

使用 Optim Manager 11.3 运行一个 Optim 恢复服务

重新打开 Optim Manager browser 窗口,转到 Service Management 选项卡,选择我们刚刚在上一节中创建的恢复请求 (DG.RESTOREORD) 并单击 ASSIGN SERVER 。选择您的 Optim 服务器并单击 OK 。接下来,选择您的恢复服务 (DG.RESTOREORD) 并单击 OK 。在下一个弹出窗口中,单击 RUN 启动恢复服务作业,并切换到 Service Monitoring 选项卡,然后检查恢复服务的状态。在完成该服务后,打开并验证报告,确保数据行被插入 OPTIM_ORDERS 和 OPTIM_DETAILS 表。

图 24. 恢复服务 — 执行报告

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

点击查看大图

关闭 [x]

图 24. 恢复服务 — 执行报告

使用 InfoSphere Optim 11.3 实现一个数据增长解决方案

一旦已将数据恢复回生产表,通过运行一个查询来验证它是一个好的做法,可以确保数据行被实际插入到相应的表中。

回页首

结束于

让我们来回顾一下本文的内容:我们使用 Optim Designer 和 Optim Manager 来展示 InfoSphere Optim 11.3 产品中的新的数据增长功能。我们使用自助服务功能来执行数据归档,使用 Optim 浏览来验证已归档的数据,从 OPTIM_ORDERS 和 OPTIM_DETAILS 表中删除已归档数据的一个子集,并将一个特殊的数据恢复到生产数据库中,以便回答客户的询价。

正文到此结束
Loading...