本 OBE 教程包括下列主题:
概述 | ||
情景 | ||
验证前提条件 | ||
在 ODI 中新建项目 | ||
为 XML 文件插入新模型 | ||
为数据库表 CLIENT 插入模型 | ||
删除 CITY_CLIENT 的约束副本 | ||
在 CLIENT 数据存储上设置 ODI 约束 | ||
导入知识模块 | ||
创建用于加载 XML 文件的新接口 | ||
执行程序包并测试结果 | ||
查看接口执行的约束错误 | ||
总结 | ||
相关信息 |
将鼠标置于此图标上以加载和查看本教程的所有屏幕截图。(警告:此操作会同时加载所有屏幕截图,网速较慢时,响应时间可能会比较长。)
注:此外,您还可以在下列步骤中将鼠标放在每个单独的图标上,从而仅加载和查看与该步骤相关的屏幕截图。
这些屏幕截图不能反映用户的具体环境。只是说明如何在 Oracle Data Integrator 中找到特定功能。
Oracle Data Integrator 能够在使用 ODI 约束或数据库约束加载到目标期间验证数据。使用流控制根据约束检查这些数据时,发现的任何错误都不会加载到目标,而是加载到由 ODI 创建并管理的错误表。该表的每一行代表一条未通过约束的记录,其中包括记录受拒原因的消息列。
该表的编辑可在 ODI Designer 内进行或由其他任何可编辑关系表的工具进行。然而,对最终用户或业务用户而言,这并非始终是一个便利的数据编辑方法。本示例将使用 ODI 接口。或者,您可以构建一个 ODI 过程通过约束加载 XML 文件。
返回主题列表
Linda 是 Mydo Main Corporation 的数据库管理员。在 Mydo Main,Linda 负责执行关于机构内各种资源的数据库管理和集成任务。她需要构建一个 ODI 方案以通过约束将 XML 文件加载到关系表。约束将仅允许加载通过检查约束验证的数据。任何未通过约束的行都将加载到目标数据库上的一个表中。将执行此 ODI 方案,在 ODI 数据集成流程结束后,此 ODI 方案将回调至 BPEL Web 服务以通知加载期间出现的任何错误。
返回主题列表
在启动任务前,确保您的系统环境满足以下要求:
软件要求
系统应该已安装以下产品:
系统应具有以下配置:
返回主题列表
项目是用户创建的 ODI 对象的集合。其中应包含一个功能域。每个项目都有自己的知识模块、变量、标记和其他类型的对象。这些对象可通过复制在不同项目之间进行共享。您还可使用全局对象(如变量或序列)定义所有项目公用的参数。在集成流程中或需要使用 ODI 开发的集成项目中,使用项目表示功能域。
要在 ODI 中新建项目,执行以下步骤:
1. |
选择 Start > All Programs > Oracle > Oracle Data Integrator > Designer 打开 ODI Designer。
|
2. |
Oracle Data Integrator Login 对话框显示。从 Login Name 下拉列表中选择 Repo_designer。
|
3. | 默认用户名和口令分别是 SUPERVISOR 和 SUNOPSIS。单击 OK 登录。
|
4. | 在左下窗格中,单击 Projects 选项卡。
|
5. | 您会看到 Projects 窗格显示在左上角。右键单击并选择 Insert Project。
|
6. | Project:New 窗口显示。输入 ODI_ER_HSP 作为名称。您会看到 Code 值也使用相同文本填充。然后,单击 OK 查看 Projects 窗格中填充的新项目。
|
返回主题列表
要为 XML 源文件插入新模型,执行以下步骤:
1. |
在 ODI Designer 中,滚动至左下窗格并单击 Models 选项卡。
|
||||||||
2. |
Models 窗格显示在左上角。右键单击并选择 Insert Model。
|
||||||||
3. | 在 Model:New 窗口中,需要为新模型输入值。为此,提供以下参数,然后单击 Reverse 选项卡。
|
||||||||
4. | 在 Reverse 选项卡中,从 Context 下拉列表中选择 Global。然后,向下滚动并单击 Reverse。这将生成 XML 源。
|
||||||||
5. | 单击 Yes 确认。然后,单击 OK。
|
||||||||
6. | 在 Models 窗格中,您可能会注意到正在填充新数据存储。单击 + 符号展开并查看 SRC_GEO_DIM_XML 模型。
|
返回主题列表
该任务需要一个关系逻辑模式。我们已在 Oracle XE 内建立了一个新模式 ODI_DATA。在拓扑管理器内也为 ODI_DATA 模式建立了一个新的物理模式。要为 CLIENT 表插入模型,执行以下步骤:
1. |
单击 Start > All Programs > Oracle > Oracle Data Integrator > Topology Manager 打开 ODI Topology Manager。
|
||||||||
2. |
Security Repository Connections 对话框显示。从 Login Name 下拉列表中选择 repository,然后单击 OK。 注:默认用户名和口令分别是 SUPERVISOR 和 SUNOPSIS。
|
||||||||
3. | 下滚至左下窗格,单击 The physical architecture... 选项卡。
|
||||||||
4. | 在左上角,单击 Physical Architecture 窗格下的 + 符号展开 Technologies > Oracle > Local_XE > Local_XE_ODI_STAGE。
|
||||||||
5. | 右键单击 Local_XE_ODI_STAGE 模式并选择 Edit。
|
||||||||
6. | 在 Physical Schema:Local_XE_ODI_STAGE 窗口中,在 Definition 选项卡中,将 Errors 的值从 E$_ 更改为 E$,然后单击 OK。
|
||||||||
7. | 在 ODI Designer 中,单击 Models 选项卡。
|
||||||||
8. | 在 Models 窗格中,右键单击并选择 Insert Model。
|
||||||||
9. | 在 Model:New 窗口中,提供以下值:
|
||||||||
10. | 单击 Reverse 选项卡。从 Context 下拉列表中选择 Global,然后单击 OK。
|
||||||||
11. | 在 Models 窗格中,单击 + 符号展开 RDBMS_TARGET 和 SRC_GEO_DIM_XML。
|
||||||||
12. | 在 SRC_GEO_DIM_XML 下,右键单击 CLIENT 并选择 Duplicate。
|
||||||||
13. | 单击 Yes。
|
||||||||
14. | 将新的重复的 Copy of CLIENT 从 SRC_GEO_DIM_XML 模型拖至 RDBMS_TARGET 模型。接下来,右键单击 RDBMS_Target 内的 Copy of CLIENT 数据存储并单击 Edit。
注:如果 Object Locking 对话框显示,单击 No。
|
||||||||
15. | 在 Data Store:Copy of Client 窗口中,将名称更改为 CLIENT 并单击 OK。
注:RDBMS_TARGET 上未创建物理表。在运行接口时,它将创建 CLIENT 物理表。
|
返回主题列表
在复制 CLIENT 数据存储期间,针对 XML 文件的约束也会进行复制。要删除该约束,执行以下步骤:
1. |
在 ODI Designer 中的 Models 窗格下,单击 + 符号展开 RDBMS_TARGET > CLIENT > Constraints > CITY Copy of CITY_CLIENT。
|
2. |
右键单击 CITY Copy of CITY_CLIENT 并选择 Delete。单击 Yes 确认。
|
返回主题列表
要在 CLIENT 数据存储上设置 ODI 约束,执行以下步骤:
1. |
在 ODI Designer 中,展开 RDBMS_TARGET > CLIENT > Constraints。然后右键单击 Constraints 并选择 Insert Condition。
|
||||||||||
2. |
在 Condition:New 窗口中,输入以下值,然后单击 OK:
|
返回主题列表
创建接口之前,将加载和集成 XML 数据所需的 LKM 和 IKM 导入项目。为此,执行以下步骤:
1. |
在 ODI Designer 中,单击 Projects 选项卡。
|
||||||
2. |
单击 + 符号展开 ODI_ER_HSP > Knowledge Modules > Loading。
|
||||||
3. | 右键单击 Loading 并选择 Import Knowledge Modules。
|
||||||
4. | Import Knowledge Modules...(XML FIle) 对话框显示。单击 File Import Directory 域中的 ... 按钮。浏览至 I:/ODI/oracledi/impexp 并单击 OK。
|
||||||
5. | 在 Select the file(s) to import 部分中,向下滚动并选择 LKM SQL to SQL,然后单击 OK。
|
||||||
6. | 同样,对于 Knowledge Modules 下的以下选项,选择突出显示的值。
最终展开的 Knowledge Modules 将如下所示:
|
返回主题列表
要创建用于加载 XML 文件的新接口,执行以下步骤:
1. |
在 ODI Designer 中的 Projects 窗格内,单击 + 符号展开 ODI_ER_HSP > First Folder > Interfaces。
|
||||||||
2. |
右键单击 Interface 并选择 Insert Interface。
|
||||||||
3. | Interface:New 对话框显示。在 Definition 选项卡上,输入以下值:
|
||||||||
4. | 单击 Diagram 选项卡。接下来,单击 Models 选项卡将源和目标拖至 ODI designer。将 CLIENT 数据存储从 SRC_GEO_DIM_XML 拖入 Source 容器。将 CLIENT 数据存储从 RDBMS_TARGET 拖入 Target 容器。
|
||||||||
5. | 单击 Yes。
|
||||||||
6. | 向下滚动并选中 Key 复选框。
|
||||||||
7. | 单击 Flow 选项卡查看执行流。
|
||||||||
8. | 在 Target (XML_GEO_DIM) 对话框中,从 RECYCLE_ERRORS 下拉列表中选择 Yes。
|
||||||||
9. | 从 CREATE_TARG_TABLE 下拉列表中选择 Yes。
|
||||||||
10. | 单击 Controls 选项卡并向下滚动单击 Apply。
注:如果 Object Locking 对话框显示,单击 No。
|
返回主题列表
要执行该程序包,执行以下步骤:
1. |
单击 Execute。
|
2. |
在 Execution 对话框中,保留默认值并单击 OK,然后再次单击 OK。
|
3. |
选择 Start > All Programs > Oracle > Oracle Data Integrator > Operator 打开 ODI Operator。从 Login Name 下拉列表中选择 Repo_designer 并单击 OK。 注:默认用户名和口令分别是 SUPERVISOR 和 SUNOPSIS。
|
4. |
在左下窗格中,单击 Hierarchical Sessions 选项卡。在窗格中,向上滚动并单击 + 符号展开 Date > <执行日期> Steps > <加载步骤>。 您会看到加载执行的详细步骤。这表明 ODI 接口将一个 XML 文件导入数据库表 CLIENT 中。
|
返回主题列表
要查看或约束接口执行的错误,执行以下步骤:
1. |
在 ODI Designer 中的 RDBMS_TARGET > CLIENT 下,右键单击选择 Control > Errors。
|
2. |
在 Error:CLIENT 对话框中查看值。目标模式上的 E_CLIENT 表现在可更新,在接口的后续执行中,E_CLIENT 表的行由 ODI 进行回收。如果行通过约束,则将加载至目标。单击 OK。 |
本文转自:http://www.oracle.com/technology/global/cn/obe/fusion_middleware/odi/odixml_to_db_transform/odixml_to_db_transform.htm?_template=/ocom/print