Oracle Warehouse Builder 11g 教程 Part1-Part5

http://www.gemini5201314.net/category/etl/page/2

Oracle Warehouse Builder 11g 教程 Part 5

2008年7月27日
没有评论

本系列教程翻译自OTN官方文档,为OWB的系列教程,全教程共12篇文章,我只介绍启中5篇,主要是想通过此教程向大家介绍OWB工具的的基本使用方法和数据仓库建模方法,由于水品有限,只能大体上保证翻译的通顺,如有任何不足之处请参考官方OTN文档.,文中很多英文词汇未翻译主要是为了配合截图

这系列文章也同时发表在itpub 上:

http://tech.it168.com/d/2007-12-28/200712271916501.shtml

http://tech.it168.com/d/2008-02-15/200802141542372.shtml

http://tech.it168.com/d/2008-02-27/200802271433072.shtml

转载注明出处 http://www.gemini5201314.net

原教程索引: http://www.oracle.com/technology/obe/11gr1_owb/index.htm

原教程列表如下:

1. Starting::

1 Starting with Oracle Warehouse Builder 11g Release 1 1

2 Working with Flat File Transactional Data

3 Designing the Relational Target Warehouse 5

4 Designing ETL Data Flow Mappings

5 Deploying Objects in the Target Warehouse

6 Loading the Target Warehouse

2. Extending:

1 Setting Up the Oracle Warehouse Builder Project 2

2 Examining Source Data Using Data Profiling 4

3 Matching and Merging Records

4 Extracting, Transforming and Loading Data 3

5 Modeling the Target Schema

6 Using Experts to Automate Warehouse Builder Tasks

只翻译其中5章,顺序如列表所示,本文所有图片来至OTN.,部分专业词汇尽量附上原英文单词.对于与程序有关的词汇尽量不翻译并给出原英文单词.,一些截图中的按钮部分单词也尽量是原文。

设计关系型目标数据库

http://www.gemini5201314.net

目的

用Oracle Warehouse Builder 来设计关系型数据库(从3范式到维度)模式可以让你的数据仓库发挥最大作用,同样的,你可以设计一个多维数据库来提供更高要求的分析需要。

在这节课中,你会建立一个小型的立方体包含两个维,这个数据仓库的原数据是文本文件

注意:这节课中的脚本只在OWB11g中有效。

主题

这节课包含如下主题

总览

先决条件

定义一个目标数据仓库模块 (略过)

创建一个外部表 (略过)

设计一个维

设计一个立方体

总结

总览

OWB 提供高级的关系型和维度型建模能力,它让你定义关系型对象比如表,试图,物化视图,序列,外部表,和维度目标对象比如维度和立方体。

OWB 把维度的设计和实现直接分开,对于维度对象你可以只点击一个按钮来选择一个关系型实现或一个多维的实现方式,因此,同样的维度对象可以是现成一个关系型数据仓库或者一个多维数据仓库(在OLAP中实现)。

在这节课中,你将设计一个维度模型来实现一个关系型目标数据仓库,对于关系型建模,OWB 同时支持设计和实现 星型模型和雪花模型

你同时会设计实现一个简单的星形模型包含一个立方体引用两个维的外键

先决条件

在开始这篇课程之前,你应该

1. 下载owbdemo_files.zip 文件,解压缩到你的硬盘上

2. 完成课程1 和 2 ,并用rep_owner / rep_owner 登录

设计维

维是星形模型最重要的数据组织方式,一些通用的维度信息如客户,产品和时间。

一个维度包含一组层级(Level) ,一组层级关系(hierarchies),定义这些层级,用户总是使用这些已知的层级关系来下钻数据,查询的性能提升是因为查询优化器知道该如何选择那些数据可用。

为了创建一个维,你必须定义如下信息:

维属性 ( Dimension Attributes)

层级 (Levels)

层级属性 (Level Attributes)

层级关系 (Hierarchies)

在这节课程里,你必须执行以下步骤:

在Data Object Editor 里面检查预定义的PRODUCTS 维。

使用时间维向导创建REL_TIME 维

使用向导创建REL_CATEGORY 维

Data Object Editor 里面检查预定义的产品信息。

这节主题介绍一个维的示例,在创建一个维之前你可以查看已经存在的维来理解维的基本设计方式。

1. 在Project Explorer 面板里,展开OWB_DEMO > Databases > Oracle ,展开SALES_WH, 然后展开Dimension .右键点击打开PRODUCTS 然后选Open Editor.

注意:你也可以双击打开PRODUCTS

图1

启动Data Object Editor ,Data Object Editor 是一个单用户界面让你容易的设计,创建,管理多种数据库或维对象,Data Object Editor 是你使用图形(diagrams)和属性栏(property sheet) 来建立和修改各种数据模式的中心位置。界面应该如下图所示:

图2

2. 为了查看维属性,在Dimension Details 面板里点击Attributes 选项卡

注意维度有一个序列,PROD_DIM_SEQ ,这个序列是在装载数据的时候用的。

同样的,ID 属性被定义成了一个代理主键( Surrogate) 而SOUCE_ID 属性被定义成了业务主键(Business Key)

注意:维的主键列是维的主键并在每一个层级上使用代理主键的方式实现,使用序列的方式,你可以用唯一值来填满维的主键。

译者注:这句话有点绕口,因为维可以有两个理论上的主键,一个是代理主键,一个是业务主键,所以我们把其中的代理主键设成主键,但你也可以不设,只要保证值的唯一性就可以了,使用SEQUENCE 是一个简单的方法。注意下面的那张图

一个代理主键从序列装载数据的时候定义了每一个记录在所有层级上的唯一性,这是在维的主要字段指定的

一个业务主键定义了总是从数据源来的自然主键。

一个父标识符在你想使用基于值的层级关系时可用。

Descriptor 列,维属性被标记成Long Description 和 Short Description ,他们被用来在business intelligence tools (一个oracle 的工具)里面显示成员属性

点击Name 列,添加两个时间属性,VALID_FROM_DATE 和 VALID_TO_DATE ,详细信息如下图。

图3

3. 为了查看维的层级和层级属性,在Dimension Details 面板里点击Levels 选项卡来查看。注意其中有四个层级并且每个层级都有一组合适的属性,比如PRODUCT 层实现了所有的层级属性除了前面你定义的两个属性

为了使这两个时间字段适用与PRODUCT层级,点击Applicable 复选框:VALID_FROM_DATE 和 VALID_TO_DATE 属性,如下图所示

注意:一个层级并不需要实现所有的属性,在每个层级上保存这个层级的信息可以使你在一个层级上实现一个层级的维属性。(原文: A level is not required to implement all dimension attributes. Implementing a dimension attribute on a level enables you to store this information on a level.)

译者注:这句话翻译起来有点绕口,作者的意思大概是这样的:比如我们有一个地区 > 产品 的两级维,我们地区的所有属性比如地区主键,地区代号,地区名字,地区描述都可以传给下一个层级产品,而我们的产品可以有两个地区属性:一个是生产地,一个是销售地,甚至还可以包括消费者居住地地区信息,但是我们在实现产品这个维的时候,我们并不需要实现所有维信息尤其是当前维所继承的一些属性(这些属性比较不唯一),换句话说就是数据粒度的问题,我们在实现比较细粒度的维属性时不要包括了上层的粗粒度维信息

4. 在关系型实现里面,一个层级属性就是一个表的一列,层级属性并没有维属性相同的名字,不过OWB可以默认设置这个。

当你定义了层级属性的时候不要担心它们的顺序,这些层级只会被层级关系排序。

图4

为了查看层级信息,在Dimension Details 面板里面点击Hierarchies 选项卡,注意到里面只有一个层级关系,PROD_STD ,它的层级如下图所示的排序(从上到下的关系)

默认的Default 单选框可以在用户查询的时候使用你指定默认的层级关系,所以选择最常用的层级关系非常重要。

图5

5. 当你定义一个维的时候,你也可以定义缓慢增长维的策略

缓慢增长维(Slowly Changing Dimensions) 决定了你如何储存你的维的历史信息,你可以选择如图所示的三种策略

点击SCD 选项卡来决定PRODUCT维的SCD策略

图6

注意:Type 2 和Type 3 的SCD只在Enterprise ETL 选项里才有(当你只有Core ETL 功能的时候,SCD 里面只有Type 1可选,如果你只使用Core ETL功能并且你不打算执行这一步,你可以跳过下列操作),这个步骤只是检查一些信息,并没有和后面的步骤有联系。

如果你想保存完整的历史变化信息,选择Type 2 实现,点击Type2 : Store the complete change history

注意到Settings 按钮被激活了,点击Settings.

Type2 slowly changing dimension 对话框中,在Recording History 下拉列表中,选择你需要的属性:

Trigger History (触发记录历史信息):选择这个选项让你在创建一个新的记录的时候记录历史信息

Effective Date (有效时间起):选择这个选项可以让你记录一条记录开始活动的时间或日期

Expiration Date(失效日期)::这个选项可以记录一条记录失效的时间或日期

比如,你想当LIST_PRICE , NAME ,PACK_SIZE 其中任何一个变化的时候记录它的历史信息,把它们设置成Trigger History 属性,如下图所示,同样的,VALID_FROM_DATE 指定到Effective Date , VALID_TO_DATE指定到Expiration Date 属性。

图7

Type2 slowly changing policy 对话框里面点击Close 来关闭它

6. 你用OWB来设计一个维对象然后把它们部署到一个关系型数据库或者多维数据库,

在Storage 选项卡页面,你可以自己决定是把它们用关系型方法实现还是多维型方法实现。OWB会自动产生合适的代码

点击Storage 选项卡来查看PRODUCT维的实现方式,对于一个关系型实现,你可以选择 星形模型,雪花模型,或者手工方式。

图8

Data Object Editor 同样提供给你查看维里面数据的工具:Data Viewer

从Diagram 菜单,选择Close Window 来退出Data Object Editor

在下面的步骤中,你将要创建两个简单的跟EXPENSES相关的维,你可以在Data Object Editor 里面创建,但是在这节课中,我们将选择使用向导的方式创建维,这将提供给你一些默认值并使你通过简单的易于理解的方式创建维

使用时间维创建向导创建REL_TIME 

时间维被广泛的应用于数据仓库中当作时间系列,比如季度(这个季度的花费和上年同季度的花费比如何)

时间维也由一组层级和定义这些层级的层级关系组成,你可以使用OWB创建财政时间维或者日历时间维

OWB可以使你不仅创建时间维而且可以预填充时间维,当你使用向导创建时间维的时候,OWB自动的创建了映射并填充了数据

同样的,这些装入的数据符合时间维的OLAP标准属性

现在,你使用时间维向导来创建REL_TIME时间维

1. 你先前检查了SALES_WH 模块,现在,展开EXPENSE_WH ,右键点击Dimensions 并选择 New >Using Time Wizard

图9

2. 在Name and Description 页面,输入REL_TIME作为时间维的名字,点击Next

图10

3. 在Storage 页面,选择ROLAP : Relational storage 作为维的实现方式

图11

4. 在Data Generation 页面,你选择创建时间的范围,这个信息用来产生预定义的映射并填充时间维,在这个映射里,你输入的值将作为一个参数,这个映射将在最后一步得到

对于Start Year , 输入2003并输入3作为Number of years ,确定Calendar 被选中, 如下图

注意:在时间维里面的层级关系定义了一组相临近的层级之间的层级关系,一个时间维可以有一个或多个层级关系,每一个层级关系必须指定是财政层级或日历层级

如果时间维由财政数据组成,你必须指定start month 和财政年的日期和财政周开始的日期,你也需要指定月和季度的边界,可以是445或544

图12

点击Next

5. 在Levels页面,选择Normal Hierarchy并选择:Calendar Year, Calendar Quarter, Calendar Month 和Day,点击Next

图13

6. 在Pre Creates Settings 页面,检查详细信息并Next

图14

一个进度对话框显示了向导创建必要对象的进度

图15

在成功完成后,点击Next ,在Summary 页面,检查一遍详细信息并点Finish

注意到向导创建了四个必要的对象,REL_TIME维对象,REL_TIME_SEQ序列用来产生代理主键的,REL_TIME表用来支持时间维的物理存储方式的,还有最重要的REL_TIME_MAP对象来产生时间维映射的

图16

如果你好奇REL_TIME_MAP对象长什么样子,双击REL_TIME_MAP启动Mapping Editor

从View 菜单,选择Auto Layout,你可以看到扩展后的映射,你可以上下移动或放大缩小来查看这个映射,OWB自动创建这个映射来提高你的效率和节省时间

图17

你已经完成了创建REL_TIME时间维,下一步,你将要创建REL_CATEGORY维

使用向导创建REL_CATEGORY

1. 在EXPENSE_WH模块中,右键点击Dimension ,选择New Using Wizard

图18

2. 在Name and Description 页面,输入REL_CATEGORY作为维的名字,点击Next

图19

3. 在Storage Type 页面,选择ROLAP : Relational Storage 来指定维的实现方式,点击Next

图20

4. 在Dimension Attributes 页面,你找到预定义的列,ID,NAME,和DESCRIPTION,注意对于ID属性选择Surrogate (代理主键),对于Name属性选择Business

你可以随你喜欢改变这些值,但你必须有一个代理主键和业务主键,代理主键标识符必须是数字类型

对于NAME属性,把Length变成30,点击Next

图21

5. 在Levels页面,输入下面层级信息作为维的默认层级关系

CATEGORY (Description: Accounting Category)

TYPE (Description: As entered on Expense Report)

图22

6. 在Level Attributes页面,对于每一个你定义的层级,你选择维属性应用到那一层,接受默认选择并点击Next

图23

7. 在SCD页面,保持默认的SCD选项选中,点击Next

图24

如果你有其他要求,OWB默认实现最低层级的层级关系并创建时间属性(VALID_DATE 和 EXPIRED_DATE)

Pre Create Settings 页面,点击Next ,维创建进度条出现,成功完成后,选择Next,点击Finish 关闭Summary 页面

注意到REL_CATEGORY已经被添加到了EXPENSE_WH目标模块,对于维,OWB会默认创建一个表用星型模型来实现并且也会创建一个序列来填充ID 列

图25

设计立方体

立方体包含到一个或多个维的连接,立方体的轴包含维的值,立方体的身体包含度量值,大多数度量都是数字类型并且可加减,比如,销售数据可以组织成一个立方体包含时间,产品,和客户维并且身体包含度量值销售额和美元销售额

在一个关系实现中,一个立方体用外键约束连接到维表并且包含一组维,为了创建一个立方体,你必须定义下列对象

立方体度量(Cube Measures

立方体维度(Cube Dimensionality)

你执行以下步骤:

在Data Object Editor里面检查预定义的SALES立方体

使用向导创建REL_EXPENSE立方体

让我们先检查预定义的SALES立方体的度量和维度

在Data Object Editor里面检查预定义的SALES立方体

这个主题向你介绍一个实例立方体,通过查看一个已经存在的立方体,你可以理解设计一个立方体的基础,后面的主题中,你使用向导创建一个简单的立方体引用到expense 模块

1. 在Project Explorer 面板里,展开OWB_DEMO > Databases > Oracle ,展开SALES_WH , 然后展开Cubes ,右键点击Sales ,然后选择Open Editor.

注意:你也可以双击SALES

图26

2. 在Dimensional 面板里,向上或向下拖动来理解设计图,你将会看到SALES立方体连接到5个维:PRODUCTS , CHANNELS , CUSTOMERS , PROMOTIONS 和TIMES

图27

3. 在检查了SALES立方体后,在Cube Details 面板里点击Dimensions 选项卡,注意其中SALES立方体连接维的层级

比如,SALES 立方体引用了PRODUCTS 的PRODUCT层级,Role 列显示了一个下拉框,里面包括了一个我们选择的维所包含的维角色信息

图28

4. 为了检查SALES立方体的度量信息,点击Measures 选项卡,注意到三个度量都是数字类型,这些度量可以聚合产生总花费,数量,或一段时期或者一个特定的消费者或一个特定产品的销售数量

图29

5. 点击Aggregation 选项卡来定义每一个维的聚合方式

你选择聚合方式来聚合数据,你也可以对于每一个立方体所引用的维预计算这些度量,默认的集合方式是SUM

你必须指定下列值

Cube Aggregation Method: 选择聚合方式来聚合数据,默认的是SUM

Summary Refresh Method: 选择数据刷新方式,你可以选择ON DEMAND 或者ON COMMIT

Summary Strategy for Cube: 定义对于每一个维的层级的预计算方式

图30

6. 你可以实现一个关系型或者一个多维型实现,在关系型实现中,一个关系型表储存数据,当使用多维实现的时候,一个分析区(Analytic Workspace)储存数据

如果你想改变一个立方体的实现方式,点击Storage选项卡,你可以在关系型实现和多维型实现之间选择

对于关系型实现,你可以选择创建Bitmap index, 有这些索引可以提高查询时间的性能

图31

对于维,你可以用Date Viewer 来查看立方体的数据,从Design 菜单选择Close Window 来关闭Data Object Editor

使用向导创建一个REL_EXPENSE立方体

现在,你要创建一个简单的关系型立方体,REL_EXPENSE, 这个立方体引用两个前面已经创建的维:REL_TIME和REL_CATEGORY , 这个向导将帮助你使用简单的几步创建立方体

1. 前面你已经查看了SALES_WH模块,现在,切换到EXPENSE_WH模块,右键点击Cubes,然后选择NewUsing Wizard.

图32

2. 在Name and Description 页面,输入REL_EXPENSE 作为立方体的名字,点击Next

图33

3. 在Storage Type 页面,选择ROLAP : Relational Storage 作为立方体的关系型实现,点击Next

图34

4. 在Dimensions 页面,你选择你的立方体要引用的维,从左边的Available Dimensions 展开EXPENSE_WH。选择EXPENSE_WH 点击 > 按钮移动到右边。点击Next

图35

5. 在Measures 页面,输入EXPENSE作为名字,点击Next

图36

Summary 页面,查看cube 的详细信息,点击Finish

注意到REL_EXPENSE立方体被添加到了EXPENSE_WH模块的下面,在Data Object Editor 里面查看立方体,右击REL_EXPENSE并选择Open Editor 或者双击REL_EXPENSE 检查立方体,然后关闭Data Object Editor

图37

Design 菜单选择Save All 来提交你的工作

图38

总结

在这节课程中,你设计了一个关系型星型模型立方体连接到两个维

这节课程中,你学会了

创建一个目标用户模式和模块

创建一个外部表指向两个简单的文本文件

使用向导创建维包括一个时间维

使用向导创建一个立方体

注意一点,你设计了维对象,这些实现对象与序列,或一些数据装载程序(映射)有关,但是这些对象并不存在物理的数据中,这是OWB提供最主要的功能来分开逻辑上的设计和物理上的实现

为了真正的创建目标数据库,你需要进一步部署这些维对象和立方体,你同样需要设计,部署和执行ETL映射来装载数据,把数据从关系型数据库或文本文件转换到我们想要的格式并最终把这些数据加载到维和立方体表中

ETLETL, owb

Oracle Warehouse Builder 11g 教程 Part 4

2008年7月27日
没有评论

本系列教程翻译自OTN官方文档,为OWB的系列教程,全教程共12篇文章,我只介绍启中5篇,主要是想通过此教程向大家介绍OWB工具的的基本使用方法和数据仓库建模方法,由于水品有限,只能大体上保证翻译的通顺,如有任何不足之处请参考官方OTN文档.,文中很多英文词汇未翻译主要是为了配合截图

这系列文章也同时发表在itpub 上:

http://tech.it168.com/d/2007-12-28/200712271916501.shtml

http://tech.it168.com/d/2008-02-15/200802141542372.shtml

http://tech.it168.com/d/2008-02-27/200802271433072.shtml

转载注明出处 http://www.gemini5201314.net

原教程索引: http://www.oracle.com/technology/obe/11gr1_owb/index.htm

原教程列表如下:

1. Starting::

1 Starting with Oracle Warehouse Builder 11g Release 1 1

2 Working with Flat File Transactional Data

3 Designing the Relational Target Warehouse 5

4 Designing ETL Data Flow Mappings

5 Deploying Objects in the Target Warehouse

6 Loading the Target Warehouse

2. Extending:

1 Setting Up the Oracle Warehouse Builder Project 2

2 Examining Source Data Using Data Profiling 4

3 Matching and Merging Records

4 Extracting, Transforming and Loading Data 3

5 Modeling the Target Schema

6 Using Experts to Automate Warehouse Builder Tasks

只翻译其中5章,顺序如列表所示,本文所有图片来至OTN.,部分专业词汇尽量附上原英文单词.对于与程序有关的词汇尽量不翻译并给出原英文单词.,一些截图中的按钮部分单词也尽量是原文。

使用数据分析来检验你的源数据

http://www.gemini5201314.net

目的

这篇文章的目的是分析你的源数据,取得数据规则,使用相似度匹配创建更正映射(correction mapping) 更正数据错误.

主题:

这个教程包括如下主题

总览

先决条件

创建一个数据分析 (Data Profile)

取得数据规则

使用更正映射来清理数据

总结

总览

数据分析是OWB11g最显著的功能,它让你研究你的数据并发现其中的不规则现象,然后创建商业规则并根据这些商业规则来创建ETL过程。

数据分析是用来自动发现不一致,冗余,不精确的问题数据和元数据的

你可以发现你的原数据和目标数据的结构,关系和数据规则,数据分析提供数据一致性( compliant ) 和概括( outlines )的统计信息,包括Six Sigma ( 出现次品的几率 ),你可以深入研究不规则的数据并手工或自动得到数据规则,你可以用这些得到的数据规则来监控你的数据仓库的数据质量。

你可以进行属性分析,引用分析,功能依赖分析或自定义分析规则。

这些步骤可以用如下图来表示

图1

在开始的第一步,你分析原数据并发现数据所包含的信息,在第二步,你得到一些数据规则然后用这些数据规则来创建更正过程(第三步),这些更正过程就是普通的Oracle Warehouse Builder 映射过程,你需要把他们部署到第四步中,然后创建更正映射来清理这些数据

先决条件

在你开始这篇课程之前,你应该完成了建立OWB项目环境一节

创建数据分析

在你开始分析数据之前,你需要定义你需要分析的原数据,你已经在前面的课程中完成了导入DQ_SRC原数据模块的数据和元数据,现在你需要执行下列步骤来创建数据分析:

使用向导来创建数据分析

激活数据分析属性

分析原数据

使用向导创建数据分析

1. 假设你用owb 用户登录,展开HANDSON 项目,右键点击Data Profiles 然后选择New.

图2

2. 启动创建数据分析想到后,在欢迎页面点击Next

图3

3. 在Name and Description 页面,输入DP1 作为数据分析的名字,点击Next

图4

4. 在Select Objects 页面,按住ctrl 键选择左边的DQ_SRC 下的Available 列表中的Tables 和 Views移动到右边的Selected 列表中。点击Next

图5

5. 在Summary 页面,选择Finish , 你已经创建了一个元数据容器来储存所有的数据分析信息

图6

激活数据分析属性

1. 在Data Profile Editor 页面,会出现以下信息,点击OK

图7

2. 在左边的Property Inspector 面板,选上Enable Common Format Discovery 和 Enable Pattern Discovery

图8

发现通用格式(Common Format Discovery) 是Oracle Warehouse Builder 用来发现你数据中的通用格式的,它用一组规则来决定你的数据字段是否符合通用格式,比如社会保险号,Oracle Warehouse Builder 发现这些属性具有通用格式就标记它们。

模式发现( Patterns Discovery ) 是Oracle Warehouse Builder 用来发现数据中的模式的,你可以发现你的数据中隐藏的模式,这些模式需要用户来解释其正确的含义,然后基于这些模式定义数据规则,比如,模式发现可以最通用的模式比如某列是产品代码或SKU 股票代号( Stock Keeping Unit) ,一旦你发现了这些模式,你就可以用数据规则来解释它们。

2. 在Data Profile Editor 里面的Profile 菜单里选择Save All 然后点击Yes

分析你的源数据

1. 在Data Profile Editor 页面的Profile 菜单选择Profile .

图9

2. 如果这是你第一次运行数据分析你可以会被提示要求输入SYS 的密码,输入SYS密码后,点击OK

图10

3. 这将会大概执行2-5 分钟,这取决于你的机器

图11

4当任务完成后,你会收到一个消息,点击OK

图12

5 . 你可以从Monitor Panel 看到数据分析的进展情况(在Data Profile Editor 的右下角)

图13

6. 整个数据分析的过程大概会花费1-3分钟,当分析过程结束后(用一个标记标识),你就可以同步数据分析结果,如果你前面运行了其他数据分析操作这个选项就很有用,因为当新的数据分析结果可用时它可以让你自己来控制,点击Yes 来取得分析结果。

图14

数据分析现在完成了,任务状态在Monitor Panel 里面改变了并且显示了结果。

图15

取得数据规则

数据分析并不只在分析数据上(Data Profiling does not stop at analyzing the profiled data),你可以手工或自定的从分析结果取得数据规则。

在下面的步骤中,你基于JOB_ID 的域值(domain value)创建一个数据规则

译者注:域(domain) 是指某一个列的所有有效值的集合,你可以看到下图中的domain 选项卡中显示的就是域值

1. 在Object Trees 面板,确保Profile Objects 选项卡选中了,在DQ_SRC下,选中EMPLOYEES 表

图16

2. 点击Domain 选项卡

图17

3. 往下拖动选中JOB_ID 列Found Domain 里面的连接。

图18

4. 在Data Drill Panel 面板,你可以发现98%的结果集是跟下列5个值一致的:SH_CLERK , SH_CLERK ,SA_REP 和 PU_CLERK , 观察Data Drill Panel 面板,发现有两个值跟这些值不一致,第一行显示employee_id 为1001 的是不一致的,点击第二行。

图19

5. 第二行显示 employee_id 为了1000 的是不一致的。

图20

6. 在上面的面板中,确保JOB_ID 行高亮显示,然后点击Derive Data Rule 按钮。

图21

7. 点击Next 跳过欢迎页面。

图22

8. 在Data Rule Name 里面输入DM_JOB_ID 然后Next.

图23

9. 在Define Rule 页面,你看到一列数据已经自动的跟域值一致了(SH_CLERK,ST_CLER等等),确保所有的正确值都已经在域值里面了(所有的除了两个JOB_ID), 点击Next.

图24

10. 点Finish 来创建数据规则

图25

11. 注意在Data Rule面板底部数据规则被应用到EMPLOYEES 表,注意在Found Domains 单元格里面可获得规则符号已经变成了已获得规则符号,你可以查看Data Rule 面板里面已获得的数据规则。

图26

12. 切换到Design Center 窗口(你可以仍然打开Data Profile Editor 窗口),展开Data Rules 并双击DM_JOB_ID

图27

13. 点击Define Rule 选项卡

图28

14. 上面显示了域值,点击OK 来关闭窗口。

图29

使用更正映射来清理数据

你可以使用数据规则来创建一个更正,你可以自动产生一个映射来强制执行数据规则和更正那些不符合规则的数据。当这些映射执行时会把原数据更正成正确的数据

创建一个更正映射

检查更正映射

部署更正映射

执行更正映射来清理数据

查看正确的数据

创建更正映射

1. 切换回Data Profile Editor 窗口,你可以只关心你刚才创建的数据规则,所以除了Data Rule 面板里面的DM_JOB_ID以外其余都不选中。

图30

2. 在Profile Objects 里面选中EMPLOYEES , 在Profile 菜单选择Create Correction.

图31

3. 在Create Correction 向导启动后,点击Next

图32

4. 在Select Target Module 里面选DP_TGT ,点击Next

图33

5 在Select Object 页面,你可以看到EMPLOYEE 表已经被选中了,点击Next

图34

6. 在Create Correction 窗口里面,可以把域规则当作一个检查约束来实现。点击 Next

图35

7. Oracle Warehouse Builder 选择合适的模式元数据,把新表的名字改成CORR_EMPLOYEES ,点击Constraints 选项卡

图36

8. 把检查约束的名字改成DM_JOB_ID_CK1 ,然后拖动到右边。

图37

9. 注意约束是从数据规则里的出来的,点击Next

图38

10. 在Choose data correction actions 里面,选择DM_JOB_ID 并从清理策略(Cleanse Strategies)选择Similarity Match (相似度匹配),然后点Next

图39

12. 进度对话框出现

图40

13. 在进度对话框消失后,点击Finish 退出更正向导

图41

查看更正映射

你可以回顾一下你刚才创建的更正映射,执行以下步骤

1. 在Data Profile Editor 窗口的左上角点击Corrected Modules

图42

2. 所有的对象都是根据向导选择的,展开Functions 并双击SIM_JOB_ID

图43

3. 点击Implementation 选项卡

图44

4. 注意到相似度运算法则也是用来确保进行相似度匹配的时候也是进行了清理,下面高亮的文本显示了

score:= owb_match_merge.similarity(s(1), JOB_ID);

在你的结果里面,你可以看到

score:=owbsys_owb_match_merge.similarity(s(1),JOB_ID)

点击OK 来关闭窗口.

图45

5. 在Correct Modules 选项卡里,展开Mappings 并双击M_EMPLOYEES 映射。

图46

6 为了查看所有的表,点击Auto layout 按钮,回顾以下这些映射,注意到CORR_EMPLOYEES 表得到了全部的数据,所有的操作最后都绑定到这个表上。

图47

7. 选择ATTR_VALUE_1 表并在工具栏上点击Expand Child Graph 按钮

图48

8. ATTR_VALUE_1 是真正执行清理的操作,这是一个可插拨的映射,当你完成了回顾之后,关闭映射窗口和Data Profile Editor .

图49

9. 在Design Center 窗口里从Design 菜单选择Save All 来保存你的工作。

10. 在Design Center 里,展开DP_TGT > Mappings ,注意到同一个映射的所有元数据都已经储存在了目标模块中。

图50

部署更正映射

为了部署更正映射,执行以下步骤:

1. 选择Tools > Control Center Manager

图51

2. 展开DP_TGT_LOCATION 并且选择DP_TGT ,点击Default Actions . 这个任务会把对象设置成部署状态

图52

3. 选择 File > Deploy > To Control Center

图53

4. 注意:你可能收到消息说位置没有被注册,如果你收到了这个消息,确保主机名被设置成了localhost 而不是机器名并点击Test Connection 时是成功连接的。

你可以从Control Center Jobs 面板里监控部署过程。

图54

5. 一旦任务成功完成了,你就可以运行这个映射来真正清理数据了。

图55

执行更正映射清理数据

为了清理数据,你需要在目标数据库执行更正映射,执行以下步骤:

1. 在DP_TGT 下展开Mappings ,右键点击M_EMPLOYEES ,然后选择Start

图56

2 在Control Center Jobs 面板,监控任务的执行,当任务完成后双击任务。

图57

3. 点击Execution Results 选项卡来查看结果

图58

4 在结果里面,109 条记录都是从源数据库来的,2 条记录是被数据规则找出来的不正确数据,这些不正确数据在下面3 个表里(当清理目标数据库的时候把这些插入到临时表,错误表),这107 条正确的记录直接被移动到了目标数据库中,当检查完成了,关闭这个窗口和Control Center Manager 窗口。

图59

查看更正后的数据

为了查看更正后的数据,执行以下步骤

1. 从Design Center 里面,展开DP_TGT > Tables ,右键点击CORR_EMPLOYEES 然后选择Data

图60

2. 点击Where Clause 按钮。

图61

3. 输入employe_id = 1001 并点OK

图62

4. 注意到JOB_ID 的值已经被更正成了SA_ERP 而不是SA_REPP , 点击Where Clause 按钮

图63

5 输入employee_id = 1000 ,后点OK

图64

6. 注意到JOB_ID 的值已经从PU_CLERK 替换了PU_CLIRK.

图65

总结

数据分析是实施商业智能系统的最重要的不可分割的一部,从仅有的原数据库连接信息里数据分析提供给你评估你的原数据和你的商业目标的手段。

在这节课程中,你应该学会了如下主题:

分析你的原数据

使用数据分析发现和检查不规则的数据并得到数据规则

使用分析原数据的方式来创建数据更正映射和强制执行数据规则

ETLowb etl

Oracle Warehouse Builder 11g 教程 Part 3

2008年7月27日
没有评论

本系列教程翻译自OTN官方文档,为OWB的系列教程,全教程共12篇文章,我只介绍启中5篇,主要是想通过此教程向大家介绍OWB工具的的基本使用方法和数据仓库建模方法,由于水品有限,只能大体上保证翻译的通顺,如有任何不足之处请参考官方OTN文档.,文中很多英文词汇未翻译主要是为了配合截图

这系列文章也同时发表在itpub 上:

http://tech.it168.com/d/2007-12-28/200712271916501.shtml

http://tech.it168.com/d/2008-02-15/200802141542372.shtml

http://tech.it168.com/d/2008-02-27/200802271433072.shtml

转载注明出处 http://www.gemini5201314.net

原教程索引: http://www.oracle.com/technology/obe/11gr1_owb/index.htm

原教程列表如下:

1. Starting::

1 Starting with Oracle Warehouse Builder 11g Release 1 1

2 Working with Flat File Transactional Data

3 Designing the Relational Target Warehouse 5

4 Designing ETL Data Flow Mappings

5 Deploying Objects in the Target Warehouse

6 Loading the Target Warehouse

2. Extending:

1 Setting Up the Oracle Warehouse Builder Project 2

2 Examining Source Data Using Data Profiling 4

3 Matching and Merging Records

4 Extracting, Transforming and Loading Data 3

5 Modeling the Target Schema

6 Using Experts to Automate Warehouse Builder Tasks

只翻译其中5章,顺序如列表所示,本文所有图片来至OTN.,部分专业词汇尽量附上原英文单词.对于与程序有关的词汇尽量不翻译并给出原英文单词.,一些截图中的按钮部分单词也尽量是原文。

 

数据抽取、转换、装载

http://www.gemini5201314.net

目的

这节课程的目的是向你展示如何定义一个简单的ETL 映射(Mapping)过程,并且展示如何处理用户自定义对象。这节课程,你也会看到如何定义一个简单的过程流 ( Process flow )

注意:屏幕截图可能会有所不同,这取决于你将要进行的其他课程,如果你看到与你自己设置不相关的地方忽略它就是了。

这节课程的脚本只能用于OWB 11gR1 ,OWB前面版本的课程你可以在OTN 上找到。

主题

这节课程包含如下主题

总览

先决条件

定义一个简单的ETL 映射

在ETL 映射里使用用户自定义对象

定义一个简单的过程流

总结

译者注:本文将不翻译在ETL映射里使用自定义对象,相关章节请参考OTN上原文

总览

ETL 是Extract (抽取), Transform (转换) 和 Load (加载) 数据的简写,它是把你的数据从数据源转换成目标数据仓库的过程,在这系列的课程里“建立OWB 项目”,你学习了如何定义一个OWB 模块来连接你的数据源或者目标数据库,现在,你将学习如何移动和转换数据的逻辑。

这节教程先使用映射编辑器来创建一个简单的映射,OWB可以用来创建大型复杂的映射,增加生产力和减少错误。

先觉条件

在开始这节课程之前,你应该:

1. 完成前面的 “建立Oracle Warehouse Builder 项目”

注意:你必须完成前面的安装Oracle Workflow Server 并配置好它。

同样,你必须完成前面课程提到的 “导入OE 模块的元数据” ,

2. 登录到SQL Plus 环境运行grant_priv_sql 脚本

grant_priv.sql 脚本赋予OE和 HR 的一些表select 权限,这些表将会用来当作你映射的数据源

用sys登录到SQL*Plus ,从你下载的文件解压目录下运行grant_priv.sql 脚本,你应该在SQL 提示符下输入如下命令:

@c:/owbdemo_files/grant_priv.sql ;

定义一个简单的ETL映射

在这节主题中,你将创建一个基本的映射来理解Oracle Warehouse Builder 是如何来进行ETL 设计工作的。你将使用Oracle 自带的样本数据OE 模式作为数据源,并把它转换到DP_TGT 目标模块去。

在这个主题中,你将执行以下步骤:

创建一个简单的ETL映射

部署和映射相关的对象

执行映射

查看装载的数据 CONS_ORDERS 表

创建一个简单的ETL映射

为了创建一个简单的ETL映射,执行以下步骤:

1. 假设你用owb 用户登录到Design Center ,在Project Explorer 面板里,展开HANDSON > Databases > Oracle >DP_TGT . 右键选择Mapping 并选择New

图1

Create Mapping 窗口出现

2. 在Create Mapping 窗口,输入SIMPLE_MAP 作为映射的名字,单击OK

图2

Mapping Editor 启动了SIMPLE_MAP 的映射

3. 你可以从左边的Explorer 面板里面添加已经存在的数据源或者目标数据

Explorer 面板里面,确保Available Objects 选项卡被选中了,展开Oracle > OE > Tables ,把ORDERS 拖到中间的画布上。

同样的,把ORDER_ITEMS 拖到画布上。

图3

4. 从左下角的调色盘,把JOINER操作拖到画布上,把它放在前面两个表的右边,点击  图标让每一个操作都最大化

图4

5. 中间的连接线显示了数据源是如何通过操作符变成目标数据的。

ORDERS.INOUTGRP1 拖一条线到JOINER.INGRP1

图5

6. 从ORDER_ITEMS.INOUTGRP1 拖一条线到JOINER.INGRP2

图6

注意观察数据源的属性作为输入属性被添加到了JOINER 操作里面

7. 在映射画板里,单击JOINER 操作的顶部来高亮显示它。

在左边的Joiner Properties 面板里面,检查Join Condition 属性。

图7

点击 编辑图标 来查看完整的连接条件,在表达式构建器 (Expression Builder)窗口,有如下连接条件:

INGRP2.ORDER_ID = INGRP1.ORDER_ID. Oracle Warehouse Builder 用两个表之间的约束来建立连接条件,单击OK

图8

8. 在Palette ,拖动Table Operator 到画布上,把它放到JOINER 操作的右边。

图9

然后会出现一个Add Table Operator 窗口

9. 在Add Table Operator 窗口里,选择 “Create unbound operator with no attribute”.在新操作名字上输入CONS_ORDERS ,单击OK.

图10

10. 从JOINER.OUTGRP1CONS_ORDERS.INOUTGRP1拖一条线,最大化CONS_ORDERS操作符并确保它是高亮着的。

图11

11. 在Table Operator Properties 面板里,对于Loading Type 的值,选择TRUNCATE/INSERT,如果你打算插入或者更新,你可以简单的选择INSERT/UPDATE ,Oracle Warehouse Builder 会自动的产生Merge 语句。

图12

12. CONS_ORDERS 表仍然不存在与repository 里面,右键单击CONS_ORDERS 表操作符的头部然后选择Create and Bind

图13

Create and Bind 窗口,检查它的细节,然后点击OK,从Mapping 菜单里面选择Close 关闭映射编辑器

图14

13. 在DP_TGT ,展开Tables, 双击CONS_ORDERS.

图15

Object Editor 里面检查表的详细信息,从Diagram 菜单里面选择Close Window 来关闭Object Editor

图16

注意:你可以直接从mapping editor 里面得到这个表而不是手工创建它,这可以提高你的工作效率并节省你的时间

从Design 菜单里选择Save All 来保存你所做的更改。

部署和映射相关的对象。

部署是从逻辑设计模型里面创建真正的目标数据库对象,当你部署ETL映射的时候,部署过程会产生PL/SQL代码,你需要直接执行这些代码来运行ETL过程,你也同样需要部署和映射有关的对象。

为了完成SIMPLE_MAP的映射部署,执行以下步骤

1. 为了部署对象,你必须启动Control Center Manager ,从Tools 菜单里面选择Control Center Manager.

图17

2. 单击DP_TGT_LOCATIONI ,在Object Details 面板里,观察你自己创建的两个对象,SIMPLE_MAPCONS_ORDERS , Design Status 是New , Deploy Status 是Not Deployed

图18

3. 单击Default Actions 来把Deploy Action 从None 改成Create.

图19

当你在这系列课程里执行其他的操作的时候会创建很多其他的对象,它们都是在DP_TGT_LOCATION 下面,为了选中SIMPLE_MAPCONS_ORDERS 这两个对象,展开DP_TGT_LOCATION > DP_TGT

展开Tables ,展开Mappings ,按住ctrl 键不放然后选中这两个对象并且点击Default Action 按钮,如图所示

图20

4. 从File 菜单里选择Deploy > To Control Center

图21

你可以在Control Center Jobs 面板里面监控整个部署的过程。

在Control Center Jobs 面板里面。Deployment status 会从 “generate” 到 “run” 到 “completed successfully”. 映射被成功部署后就可以执行了。

为了能够查看映射生成的代码,在Control Center Job 面板里双击HANDSON job

注意:你肯定会看到很多个任务在执行因为你可能完成了其他课程的任务,如果你在窗口里看到多个任务,检查Finished 列来查看日期和时间以确定最后一个任务

图22

4. 在Job Details 对话框里,选择Script 选项卡

5. 注意到Oracle Warehouse Builder 产生了一个 .pls (PL/SQL) 的代码来部署映射,如果你想看SIMPLE_MAP的代码的话,你可以点击View Code

图23

向下拖动窗口来查看产生的代码,从Code 菜单里面选择Close . 然后在Job Details 窗口里面从File 菜单点击Close 来退出

图24

执行映射

你已经学习了当你部署映射的时候Oracle Warehouse Builder 会产生一段 .pls 的代码。你现在需要真正执行那段代码来完成映射任务。

SIMPLE_MAP 是通过从OE.ORDERS 和 OE.ORDER_ITEMS 表加一个连接条件来选择数据的,我们使用JOINER 操作来加载CONS_ORDERS 表。

为了执行映射,你需要执行下列步骤:

1. 假设你还没有退出Control Center,展开DP_TGT_LOCATION > DP_TGT > Mappings 然后选择SIMPLE_MAP

图25

2. 从File 菜单里面选择Start

图26

当你点Start 的时候,Control Center Jobs 面板会转换到Execution 选项卡,你可以在这个面板里监控任务的执行

为了查看执行的详细信息,在Control Center Jobs 面板里面的Jobs 列双击SIMPLE_MAP

图27

3. 在Job Details : SIMPLE_MAP 对话框,单击Execution Results 选项卡来监控Row Activity

你可以查看有多少行被插入到目标数据库表里面去了,从 File 菜单选择Job Details : SIMPLE_MAP 对话框,然后选择Close , 从Control Center 的File 菜单里选择Close 来退出

图28

查看CONS_ORDERS 表里面加载的数据

为了检查我们刚才执行ETL映射的结果,我们查看CONS_ORDERS 表里面的数据,执行以下步骤:

1. 在Project Explorer 面板里,在DP_TGT展开Tables ,双击CONS_ORDERS 并选择Data

图29

2. 在Relational Data Viewer : CONS_ORDERS里面,向下滚动来检查数据,从Object 菜单选择Close Window 来退出Data Viewer

图30

译者注:这里跳过在ETL映射中使用自定义数据库对象。

定义一个简单的过程流(Process Flow)

在Oracle Warehouse Builder 里面,一个过程流是用来管理一组映射和它相关的活动的,比如用FTP上传文件到数据仓库的机器上或者发生转换错误的时候通知管理员。使用过程流你可以定义一个映射的序列让这些映射以前面产生的结果来选择不同的处理方式比如当执行映射的时候失败了要发email 通知管理员。Oracle Warehouse Builder 同样能够定时执行过程流。

在Process Flow Editor 里面定义了一组活动用来添加转化和设计流程的。一个活动是过程流的一个工作单元,这些工作单元可以在Oracle Warehouse Builder 里面或着外面执行。转换显示了这些活动的顺序和条件。

在这节主题中,你将执行以下任务:

创建一个过程流的模块和包

设计一个过程流

部署和执行这个过程流

创建过程流的模块和包

在你开始设计过程流之前,你需要创建一个模块来包含过程流,过程流模块包含过程流包(Process Flow Package), 过程流包是用来相互关联过程流的,在运行时,你可以运行一个过程流来调用在同一个包下的其他过程流。

在这个主题里面,你将会创建一个过程流模块叫做PFLOWS ,一个过程流包叫做L_MAPS ,一个过程流模块是一个过程流的容器让你来验证,产生,部署一组过程流。

为了创建过程流模块和包,执行以下步骤:

1. 在Project Explorer ,展开HANDSON Process Flows ,右键单击Process Flow Modules 并且选择New ,

Create Modules 向导出现,点击Next 来跳过欢迎页面。

图31

2. 在Name and Description 页面,输入PFLOWS 作为过程流模块的名字,单击Next

图32

3 现在你可以创建一个Oracle Workflow Location 叫PFLOWS

注意:你定义的Oracle Workflow Location 是你想把过程流放置的地方,Oracle Workflow Location 应该指向workflow 模式 ( OWF_MGR) ,你应该在前面的课程里面已经完成了Oracle Workflow 的安装和配置。

在Connection Information 页面,查看Oracle Warehouse Builder 已经创建了一个默认的位置:PFLOWS_LOCATION1 , 点击Edit 按钮来指定详细workflow 位置。

图33

Edit Oracle Workflow Location 窗口,把原来的PFLOWS_LOCATIN1 改成PFLOWS_LOCATION (删掉后面的 1 )。

这节课程使用owf_mgr 作为模式名和密码,如果你的Oracle Workflow 模式使用的是不同的名字和密码,把相应的部分替换掉,注意Workflow 用户要解锁.

把下列信息作为workflow 的位置信息:

Name: PFLOWS_LOCATION

Password: owf_mgr

Host Name : 你的ip 或者机器名

Port Number: 1521

Service Name : orcl 或你自己数据库的Service Name

Schema: owf_mgr

Version: 2.6.4

点击Test Connection 来测试连接的正确性,如果成功,点击OK ,如果不成功,检查连接的详细信息并重试一遍,点击OK , 点击Next 。在Summary 页面,检查详细信息,然后点 Finish

图34

4在Create Process Flow Package 页面,输入L_MAPS 作为名字,点击OK

图35

5. Create Process Flow 窗口出现,输入LOAD_PF 作为过程流的名字

图36

点击OK

Oracle Warehouse Builder 启动了过程流编辑器,一个Start 和 End 活动已经在上面了。

图37

下个主题中,你可以学习到如何用活动和转换来设计过程流

设计过程流

为了设计一个过程流,执行以下步骤:

1. 在Process Editor 里面,从Palette(调色板面板)里面拖动一个 (交叉) Fork 活动到画布上,你可以用Fork活动来启动一个多选择的,并发的活动,你也可以从Explorer 面板里的Selected Objects 选项卡里拖动Fork 到画布上

图38

2. 在Process Editor 里面的Explorer 面板下,点击Available Objects 选项卡,展开DP_TGT 并且拖动SIMPLE_MAP mapping 到画布上,把它放在Fork 活动的右上角。

图39

3在Explorer 面板里,确定Available Objects 选项卡选中了,从DP_TGT 拖动MAP_CUSTOMERS 映射到画布上。

图40

译者注:MAP_CUSTOMERS 映射是省略掉的用户自定义对象里面创建的映射,你可以不用管它。

4. 从左边的Palette面板拖一个AND 操作到画布上,在SIMPLE_MAP 和MAP_CUSTOMERS活动右边。

图41

5 把你的鼠标放在Start 上,确保鼠标箭头变成了 (),从Start 拖一条线到Fork 活动上(这些线在这里代表转换)

为了完成一个转换,鼠标箭头必须变成().

Start1 拖一条线到FORK 活动。

FORK 活动拖一条线到SIMPLE_MAP

FORK活动拖一条线到MAP_CUSTOMERS

SIMPLE_MAP拖一条线到 AND1 活动

MAP_CUSTOMER拖一条线到 AND1 活动。

从 AND1 拖一条线到END_SUCCESS活动。

点击Progress Editor 工具栏的AutoLayout()

当你连接了所有的转换后,整个过程流应该像如下图所示

图42

6 完成过程流的设计

Process Flow 菜单里选择Generate 来生成LOAD_PF 过程流,生成的过程流代码是一个标准的XML 格式的过程定义语言(XPDL XML Process Definition Language)

Process Flow 菜单选择Close 来关闭process editor.

Design Center, 点击Save All .

图43

Deploying and Executing the Process Flow

为了完成过程流的执行和部署过程,完成以下步骤

1. 在Tools 菜单里,选择Control Center Manager ,在Control Center 里展开PFLOWS_LOCATIONPFLOWS 。选择PFLOWS.

Object Details 面板里,选择L_MAPS 包,把Design Status 设成New ,点击Default ActionDeploy Action 设成Create.

图44

注意:你部署的是过程流包而不是过程流,然而你执行的是过程流。

2. 在File 菜单里选择Deploy > To Control Center

图45

过程流包L_MAPS 被成功部署了

图46

2. 展开L_MAPS 并选择LOAD_PF .

Start 菜单选择File ,或点击工具栏上的Start 按钮

图47

4. 查看执行的详细信息,双击LOAD_PF

图48

LOAD_PF 对话框里,点击Execution Results 选项卡查看Row Activity ,你可以看到有多少行被插入,更新,删除,合并了。

Job Details 窗口的File 菜单里选择Close ,然后从Control Center Manager 的File 菜单选择Close 来退出。

图49

LOAD_PF 过程流(一个非常简单的例子)定义了两个并行执行的任务,除非两个都执行完了才继续,记住你在Loading Type 属性里选择的目标表是TRUNCATE/INSERT ,所以执行这个过程流的时候,OWB 会先截断这个表然后再重新加载两个目标数据库表,CONS_ORDERS 和 SCALAR_CUST

你可以设计更复杂的过程流,根据执行的结果来循环,你也可以根据一定的条件,错误,或者更复杂的发送邮件的错误处理过程来定义你自己的分支。

总结

在这节课中,你应该学会了以下内容

创建,部署,执行一个简单的ETL映射

创建,部署,执行了一个使用了自定义数据库对象的ETL映射(省略了)

创建,部署,执行一个简单的过程流。

ETLetl owb

Oracle Warehouse Builder 11g 教程 Part 2

2008年7月27日
没有评论

本系列教程翻译自OTN官方文档,为OWB的系列教程,全教程共12篇文章,我只介绍启中5篇,主要是想通过此教程向大家介绍OWB工具的的基本使用方法和数据仓库建模方法,由于水品有限,只能大体上保证翻译的通顺,如有任何不足之处请参考官方OTN文档.,文中很多英文词汇未翻译主要是为了配合截图

这系列文章也同时发表在itpub 上:

http://tech.it168.com/d/2007-12-28/200712271916501.shtml

http://tech.it168.com/d/2008-02-15/200802141542372.shtml

http://tech.it168.com/d/2008-02-27/200802271433072.shtml

转载注明出处 http://www.gemini5201314.net

原教程索引: http://www.oracle.com/technology/obe/11gr1_owb/index.htm

原教程列表如下:

1. Starting::

1 Starting with Oracle Warehouse Builder 11g Release 1 1

2 Working with Flat File Transactional Data

3 Designing the Relational Target Warehouse 5

4 Designing ETL Data Flow Mappings

5 Deploying Objects in the Target Warehouse

6 Loading the Target Warehouse

2. Extending:

1 Setting Up the Oracle Warehouse Builder Project 2

2 Examining Source Data Using Data Profiling 4

3 Matching and Merging Records

4 Extracting, Transforming and Loading Data 3

5 Modeling the Target Schema

6 Using Experts to Automate Warehouse Builder Tasks

只翻译其中5章,顺序如列表所示,本文所有图片来至OTN.,部分专业词汇尽量附上原英文单词.对于与程序有关的词汇尽量不翻译并给出原英文单词.,一些截图中的按钮部分单词也尽量是原文。

 

 

建立Oracle Warehouse Builder 项目.

http://www.gemini5201314.net

目的

这篇指南你需要建立并配置Oracle Warehouse Builder 11gR1环境. 你会创建Warehouse Builder 仓库(repository).并登录Warehouse Builder Design Center.

注意: 这篇文章的脚本只适用与OWB11g .对于以前的Oracle By Example 指南则在OTN 上的 OWB 10g R1,R2.

主题 

总览 (overview)

先决条件

如果使用OWB 10g R2

准备数据库实例

建立项目环境

导入元数据到Source Modules

总结

总览

这篇指南你需要建立并配置Oracle Warehouse Builder 11gR1环境.你也会使用Repository Assistant 去创建一个用户并登录到你的设计元数据储存的仓库

这篇指南是为以下教程准备的:

Examining Source Data using Data Profiling (用数据分析去检验你的数据源)

Matching and Merging Records (匹配和合并记录)

Extracting, Transforming and Loading Data (数据抽取、转换、装载)

Modeling the Target Schema (数据仓库建模)

Using Experts to Automate Warehouse Builder Tasks (使用专家模式自动执行Warehouse Builder 任务)

先决条件

在开始这篇指南之前,你应该:

1. 完成安装Oracle Database (Enterprise Edition)10g R2 (patched 10.2.0.3 for OLAP support) 或者11g R1 (11.1.0.6).

译者注: Windows 下默认将Oracle Database 11g 和Oracle Warehouse Builder 11g 进行了捆绑,但如果是其他平台则需要单独下载.

注意:这篇文章在OWB 11gR1 和Oracle Database 10gR2 (10.2.0.3) 上测试过,你可以选择在Oracle Database 11gR1 或者 10gR2 上运行.

我们强烈建议你使用orcl 作为你的数据库名字(sid), 否者,把你在这篇文章中看到的 orcl 替换成你自己的数据库Service Name.

SYSDBA 用户名和密码分别是:sys/oracle ,你可以替换成你自己的数据库用户名和密码.

在安装数据库的时候记得包含上样本数据库,在开始安装的时候到安装结束,保证 sample schema 的帐户解锁了: OE SH 和 HR

1. 成功完成Oracle Warehouse Builder 11g 的安装。为了简化设置,我们假设Oracle Database 和Oracle Warehouse Builder 是安装在同一台机器上的。为了这个课程,我们也强烈建议把数据库和OWB 安装在同一台机器上。

注意:如果你使用Oracle Database 10gR2 和Oracle Warehouse Builder 11gR1 的话,要保证Oracle Warehouse Builder 被安装在一个空的Oracle Home 目录下,而不是Oracle Database 的Home 目录之下.

我们强烈建议你把Oracle Warehouse Builder 的Home 目录命名成 owb11gr1 并且位置像如下设置:

C:/oracle/product/11.0/owb11gr1.

2. 注意:下面的是可选项,如果你打算进行第四节课程 (Extracting ,Transforming and Loading Data)

按照如下指示第四步安装Oracle Workflow Server 2.6.4 ,

注意:如果你使用Oracle Database 10g R2 (10.2.0.3) 和OWB 11g , 从Oracle Warehouse Builder 11g 的安装目录 <OWB 11G Home>/owb/wf/install 目录安装Oracle Workflow Server 2.6.4 ,并且在Unix平台上执行wfinstall.csh ,在Windows 平台上执行wfinstall.bat 脚本,你必须在Oracle Database Home 目录安装Oracle Workflow Server 而不是OWB home 或其他的home 目录.

如果你是在Oracle Database 11g 实例和 OWB 11g, 上安装Oracle Workflow Server. , 你需要安装一个特别为Oracle 11g 制作的Oracle Workflow Server 版本, 进入到Database 11g的安装目录 <Oracle 11g Database Home>/owb/wfinstall 目录, 在Unix 下执行wfinstall.csh ,在Windows 下执行wfinstall.bat 。你必须在你的Oracle Database 11g 目录下安装Oracle Workflow Server 而不是OWB 或者其他的Home 目录

3. 开始在Windows上安装和配置Workflow Server

在命令行窗口中,进入到你的owb_home/owb/wf 目录,并且运行wfinstall.bat .比如:

C:/> cd owb_home /owb/wf/install

C:/cd owb_home/owb/wf/install>wfinstall.bat

开始在Linux 上安装和配置Workflow Server

在shell中,进入到owb_home/owb/wf 目录,运行wfinstall.csh ,比如

$ cd owb_home/owb/wf/install

$ wfinstall.csh

Oracle Workflow Configuration Assistant dialog 窗口出现

图1

输入如下值:

对于Install Option , 选择Server Only

对于 Workflow Account 输入owf_mgr

对于 Workflow Password ,选择任何你想要的密码,比如owf_mgr

对于 SYS 密码,输入你的sys 账号的密码.

对于TNS Connect Descriptor ,输入 hostname:port:service_name ,其中hostname , port , service_name 的值对应着你想要安装Workflow 的数据库。

注意:不要使用填写在tnsnames.ora 文件中的 net service name , Workflow Configuration Assistant 并不会在安装的时候引用你的tnsnames.ora 文件

当你输入了所有必要的信息后,单击Submit 开始Workflow configuration 的安装过程,整个安装和配置过程大概需要几分钟的时间,你可以检查你的 owb_home/owb/wf/install/wf.log 文件来查看安装的信息。

当安装结束后,Workflow Configuration Assistant会出现一个对话框告诉你:

Workflow Configuration has completed successfully

单击OK 来退出。

最后,你需要赋予owf_mgr “EXECUTE ANY PROCEDURE” 的权限,用sys 账号连到SQL Plus,并赋予owf_mgr 如下权限.

grant execute any procedure to owf_mgr;

图2

4. 下载owbdemo_files文件.把它解压到你想要的任何地方,比如 c:/root 目录

如果使用 DB10gR2

注意::如果你是使用Oracle Database 10gR2 而不是Oracle Database 11g .你必须执行如下步骤来创建OWBSYS 用户并且赋予它连接到Control Center 和workspaces 的权限.

1. 如果使用的是Oracle 10gR2 ,你需要运行如下脚本来创建OWBSYS 资源仓库模式,Oracle 11g会默认创建这个用户,而OWB 11g 则需要这个账号.

这个脚本在< your OWB home>/OWB/UnifiedRepos/cat_owb.sql . 安装这个数据库用户如果它不在数据库中。

注意:调用SQL Plus 的方法很重要,你不要从 Start > Programs > Oracle database home folder 或者 Oracle Warehouse Builder folder 里面打开SQL Plus ,而应该是 Start > Run > cmd.exe, ,输入Path 命令并回车,你需要检查Oracle Warehouse Builder 是在path 变量的最开头,从而保证SQL Plus 命令都是在Warehouse Builder 安装目录下执行的,如果不是的话,你需要设置path 变量 Path=<Oracle Warehouse Builder home>/bin 然后再用sys 用户执行SQL Plus 命令,比如,在命令行模式下输入:

sqlplus sys/<sys password> as sysdba

用sys 账号连到sql plus 以后,用如下命令创建OWBSYS 账号,

@<your OWB home>/owb/UnifiedRepos/cat_owb.sql;

回车,你将会要求输入OWBSYS 用户所使用的tablespace .对于这个教程来说,我们强烈建议你使用USERS tablespace 作为默认的tablespace ,输入USERS ,然后回车.

译者注:如果你不想每次打开sqlplus 都重复输入path 变量的话,你应该预先设置好path变量,注意你安装的时候是从OWB目录来执行sqlplus ,因为有一些相对路径的问题,但是我们在日常维护和管理数据库的时候还是应该将Oracle Database 的bin path 变量放在开头,在以前的版本中,我们安装了Oracle 之后再安装OWB ,你会发现sqlplus 进不去了,这是因为OWB安装的时候默认将环境变量给改了,你需要将Oracle Database 的bin 变量放在path 的开头才能正确连接数据库.

如果你使用图形化客户端的话,比如PL/SQL Developer , 同样要注意变量的问题,注意选择Oracle Database 的Home 目录,而不是OWB 的Home 目录,因为PL/SQL Developer 是使用oci 来连接数据库,而OWB并没有oci , 当然如果你使用的是基于Java 的图形客户端比如Oracle 官方的SQL Developer (Oracle 11g 默认自带了) , 则不存在这种问题,因为Java 是用JDBC连数据库,不需要读注册表,也不关心环境变量的问题。

关于环境变量最后要注意的一点是记得要把Java 的环境变量放在path 的开头,尤其对与比较旧的Oracle 版本,如果你新安装了Oracle ,你会发现Java -version 出来的结果是1.3 或1.4 , 一般建议顺序如下:

JAVA_HOME/bin

ORACLE_HOME/bin

OWB_HOME/bin

ANT_HOME CATALINA_HOME MAVEN_HOME ……..

图3

当这个命令成功结束后,你将会看见以下信息:

If your are NOT using an OWB installed in the Oracle database home, please now run reset_owbcc_home .

2. 先前,我们建议你在一个不同于Oracle Home 目录的地方安装OWB11g ,为了能够连到10gR2 的数据库,运行UnifiedRepos/reset_owbcc_home.sql 并且输入你的Oracle home 目录,用system 权限比如sys 或 system 账号来执行这个命令,比如,输入如下的命令.

SQL > @c:/oracle/OWB_HOME_11G/owb/UnifiedRepos/reset_owbcc_home ;

输入回车,为了安装OWB Control Center 你需要输入完整的Oracle home ,首先你需要阅读以下注意事项,

注意:在后面的例子中,注意观察使用 正斜杠 “ / “ ,即使在Windows 环境中,同样要注意所有的目录都是大小写敏感的,注意输入逻辑盘符的名字用大写,比如C: ,并在后面跟上大小写敏感的完整Oracle home 目录,比如如下示例:

C:/oracle/OWB_home_11g

回车

3. 如果安装数据库的时候开启了 strong password 选项,当创建完OWBSYS 后,你需要解锁OWBSYS账号并且解冻他们的password ,打开第二个或者第三个SQL Plus 环境来解锁OWBSYS 账号并给它一个密码:

alter user OWBSYS account unlock :

alter user OWBSYS identified by OWBSYS ;

译者注:注意Oracle 11g是大小写敏感的,你的OWBSYS密码用大写的OWBSYS或小写的owbsys 是不一样的

4. 对于每一个Warehouse Builder client 的安装,都需要能够连接到Oracle Database 10gR2 的workspace上。

默认的,Warehouse Builder 11gR1 是连接到Oracle Database 11g 数据库的workspace 上,也就是说,Oracle Warehouse Builder 的repository 假设安装在Oracle 11g Database 上。

为了能够连接上10gR2 的repository 上的workspace ,

修改 <owb_home>/owb/bin/admin/Preference.properties 文件,如果这个文件不存在就照着同一个目录下的Preference.properties.tmp 文件模板创建一个.

在preference.properties 文件中,添加一个REPOS_DB_VERSION_ALLOWED 并且设置它的值为Oracle 10g,Oracle 11g (11g 已经默认存在了)

准备Oracle Database Instance

为了完成这个OBE 的教程,你需要执行下列步骤:

运行脚本

导入dq_src.dmp 文件

运行脚本

在你开始这个教程之前,你需要运行create_user.sql 脚本和 unlock.sql 脚本,这两个脚本在你下载的owbdemo_files.zip 文件里面。

为了运行sql 脚本,运行下面的步骤:

1. create_user.sql 脚本用来创建DQ_SRC 用户并赋予connect ,resource , create any view 权限,在下面的主题中,你导入dq_src.dmp 文件给这个 dq_src 用户.

用sys登录到SQL*Plus ,运行下载包里面的create_user.sql 文件。

@c:/owbdemo_files/create_user.sql

图4

假如你还没有unlock 样本数据库用户的账户,为了完成后面的例子,运行unlock.sql 脚本来确保所有的样本数据库账号都解锁了,这个脚本同样也unlock Oracle Workflow 用户的帐户 owf_mgr.

如果你没有安装和配置Oracle Workflow , 编辑unlock.sql 去除掉 owf_mgr 的脚本。

假设你还是用的sys 账号来登录的,为了unlock 这些账号,输入如下命令:

@c:/owbdemo_files/unlock.sql

图5

输入quit 来退出SQL Plus 环境.

导入dq_src.dmp 文件

为了导入dq_src.dmp 文件,你需要执行以下步骤:

1. 导入dmp 文件,Start > Run 并且输入cmd 来打开命令行窗口,输入如下命令:

<ORACLE DATABASE_HOME>/bin/imp dq_src/dq_src@<ORCL 或者你的数据库service name.

file=<PATH>/dq_src.dmp full=y

把其中的<Oracle Database_home>替换成你自己的Oracle Database home 目录并把其中的<PATH>替换成你解压后的dq_src.dmp 文件的目录,同样的,要保证你输入正确的Oracle database service name.

图6

当导入结束后,退出命令行窗口.

建立项目环境

为了建立和配置Oracle Warehouse Builder 的项目环境,你需要执行以下步骤:

用Repository Assistant 来创建一个Repository

导入Start.mdl 文件

创建目标数据库用户

注册Oracle Workflow 用户.

设定Security Preferences

用目的数据库地址来连接指定Modules.

用Repository Assistant 来创建Repository

当你第一次登录到OWB Design Center,你可以创建一个用来登录的账号,一个新的workspace , 一个新的workspace 用户,并且安装Oracle Warehouse Builder repository.

1. Start > Programs > {your Oracle – OWB11g client Home } > Oracle Warehouse Builder > Administration > Repository Assistant . Welcome 屏幕出现在Repository Assistant 向导.单击Next

2. 在Database Information窗口,输入你的ip 或你的机器名作为host name , 1521是默认的port , orcl 作为Oracle service name ,单击Next

图7

3. 在 Choose Operation 窗口,选择 Manage Warehouse Builder workspaces 选项,单击Next

图8

4. 在Choose Workspace Operations 窗口, 选择Create a new Warehouse Builder workspace单击Next

图9

5. 在New or Existing User 窗口,选择Create a workspace with a new user as workspace owner, 单击Next

图10

6. 在DBA Information 窗口,输入你的system 用户名和你的密码,单击Next

图11

7. 在 Workspace Owner(New) 窗口,输入owb/owb 作为workspace 名字和密码,输入owb 作为Confirm password ,并取名my_workspace 作为你的workspace name ,单击Next

图12

8. 在OWBSYS Information 窗口,输入owbsys/owbsys 作为用户名和密码,单击Next

图13

9. 在Select Tablespaces 窗口,你可以选择你想要的用来储存data , index ,temp 的tablespace .你也可以接受默认选项

图14

10. 在 Select Languages 窗口,选择你想要的基础语言(用来显示界面的),你也可以接受默认值,单击Next

图15

11. 在Workspace Users(Optional) 窗口,你可以创建一个已经存在的用户来当Oracle Warehouse Builder user 的workspace user ,也可以自己创建一个新的,这个用户将有权限通过Control Center来在design center 上部署和执行对象.这个用户也是一个Target Schema .现在,因为你现在不用使用workspace user ,所以单击Next 进入下一个窗口

图16

Summary 窗口,检查每一个信息,然后单击Finish ,一个安装进度条出现了,整个安装repository 大概需要花费几分钟的时间.

图17

在安装成功以后,一个Installation Successful 的窗口会出现,单击OK. 整个Repository Assistant 将会关闭.

导入Start.mdl 文件

你现在可以使用Warehouse Builder Design Center 来导入元数据,为了从Start.mdl 文件导入对象,你需要执行下列步骤:

1. 首先,你需要登录到Design Center , 选择

Start > Program > {your Oracle –OWB client Home} > Warehouse Builder > Design Center

Design Center 登录的窗口出现后,输入owb/owb 作为用户名和密码,如果没有看见showing details 按钮,单击下面的Showing Details 按钮来展开connection details

图18

选择Connection details 选项,如果还没有选择,输入详细的connection details .

输入 host 为 你的ip 或机器名, port 是 1521, service name 是 orcl 或者你自己数据库的service name

2. Design Center 出现

注意:Design Center 是主要的Warehouse Builder 的客户端,它提供简单易用的图形环境如下面的截图所示,它支持你设计,部署,创建,修改,监控你的商业智能系统。

Design Center 被分成三个面板,Project Explorer , Connection Explorer 和 Global Explorer 面板,如下图所示,Project Explorer 里面已经包含了一个MY_PROJECT 项目,它是一个空的,当Oracle Warehouse Builder 创建的时候就默认安装的项目。

图19

3. 为了开始导入Start.mdl 文件,从Design 菜单,选择 Import > Warehouse Builde Metadata

图20

然后会出现Metadata Import 窗口。

注意:如果你在导入之前已经对repository 的元数据做了修改,Oracle Warehouse Builder 会弹出来一个警告对话框,单击 Save 按钮来保存你所有的改变,或者 选择 Rollback 按钮来还原到你以前的版本,如果你没有做任何改变,Oracle Warehouse Builder 就会出现Metadata Import 对话框.

4. 在导入Metadata 的时候,单击 Browse 来查看和选择你要导入的元数据文件,它会弹出一个文件选择对话框,从你下载解压的文件夹下面选择 Start.mdl 文件,注意,你可以修改默认的log 文件位置如果你等下想看导入的日志信息.如果你打算多次导入metadata 文件,那么它会弹出一个对话框警告你它要覆盖原来的日志文件了。

注意:无论是你导出还是导入repository metadata ,Oracle Warehouse Builder 都会记录下诊断和统计信息。你可以每次导出或导入的时候制定日志的文件位置,这个日志文件可以让你监控和检查故障。导入日志记录了包括导入的object types ,导入中总共添加的对象,替换的对象,跳过的对象和删除的对象总数。

图21

在接受了默认的Object Selection , Import Option 和Match By之后,单击Import 按钮.

5. 在导入完成之后,点击Show Details , 它显示了元数据导入的日志记录,滚动整个信息条查看有没有错误信息出现。

图22

单击Close 关闭对话框。

6. 一个新的项目 HANDSON 被添加进了Project Explorer 面板,展开Handson > Databases .> Oracle 并且检查两个模块 DQ_TGT 和 DP_TGT

图23

Design 菜单,选择Save All 并且点击 Yes 来提交所有的改变。

创建目标用户

你会注意到HANDSON项目下两个新的模块 DQ_TGT 和 HP_TGT 。每一个目标模块都必须要跟一个目标用户 (Target Schema) 绑定,这个目标模式 (Target Schema) 是用来储存物理的数据和对象的,并且,每一个模块都引用一个我们指定的位置(Location).

1. 为了创建DQ_TGT 和 DP_TGT 目标模式用户,执行以下步骤:

在Global Explorer 面板里面,展开Security 节点,右键点击Users 节点,并且选择New

注意:你必须在开始创建用户之前先保存你前面所做的更改,为了保存前面的更改,从Design 菜单里面选择Save All

图24

3. 在创建用户面板里面,你可以从已经存在的用户列表里面选择一个也可以创建一个新的

点击Create DB User 来在数据库里面创建一个新的目标数据库用户

图25

3. 为了创建一个新的目标数据库用户,你必须要有DBA 权限,在 Create Database User 对话框里输入system 作为DBA 的用户并且输入oracle 作为它的密码或者你自己的数据库DBA的密码。

输入DQ_TGT/DQ_TGT 来作为用户名和密码创建一个新的数据库用户,接受默认的tablespace 值并单击OK

图26

4. 在Create User 页面里输入另一个schema 用户 DP_TGT ,用同样的方式来创建一个新的用户

在创建用户的对话框里,输入system DBA 的名字和oracle 密码或者你自己的数据库DBA 密码。

输入DP_TGT/DP_TGT 来作为你要创建的数据库用户的账号和密码,接受默认的tablespace 值。

图27

单击OK, DQ_TGT 和 DP_TGT 都被加入了 Selected Users List.

图28

单击OK , 一个新的Register Users 进度条会弹出来,当进度条窗口关闭的时候,检查用户节点,你会发现两个新添加的目标数据库用户。

5. 你现在要创建目标位置 (Target Location)

注意:位置定义了数据库模式或者目标工具的信息,它被用来部署对象,位置被指定成一种模块,比如Oracle Database , SAP 或者文本文件.

展开Locations > Databases ,右键点击Oracle 并且选择New.

图29

Create Oracle Database Location 的窗口里,指定如下值

在Name 里把ORACLE_LOCATION1 改成DQ_TGT_LOCATION (删掉默认最后面的 1)

User Name: DQ_TGT

Password: DQ_TGT

Password: DQ_TGT

Host : 你的ip 或者机器名

Port: 1521

Service Name : orcl 或者你自己的数据库Service Name

Schema: DQ_TGT

Version : 10.2 或者11.1 根据你自己所使用的数据库的版本而定。

点击Test Connection , 一个SUCCESS 信息将会出现在下面.

图30

单击OK , 现在重复以上步骤来创建DP_TGT

Create Oracle Database Location 窗口,指定如下值:

在Name 把ORACLE_LOCATION1 变成DP_TGT_LOCATION

User Name: DP_TGT

Password: DP_TGT

Host : 你的ip 或者你的机器名

Port : 1521

Service Name : orcl 或你自己的数据库Service Name

Schema : DP_TGT

Version 10.2或11.1 根据你自己所使用的数据库的版本而定

点击Test Connection , 一个SUCCESS 信息将会出现在下面.

6. 检查Oracle Location 节点并且注意新的Location DQ_TGT_LOCATION 和DP_TGT_LOCATION 已经被添加了

图31

从Design 菜单,选择Save All 来保存你所做的修改,在弹出来的警告对话框中,单击Yes来提交更改。

注册Oracle Workflow User

注意:这是一个可选步骤除非你想要进行“Extracting, Transforming and Loading Data”这一章节

你将会赋予Oracle Workflow(OWF) 用户特殊的权限,owf_mgr ,将会有权限在Control Center 里面来执行process flow (进程流)

对于OWF 用户,你不需要输入Control Center 用户的密码,因为Control Center 用户有更高的权限。

为了完成注册OWF用户,你使用Register Warehouse Builder Users 向导来完成,它在Global Explorer面板的Security > Users节点下面.,为了能够连接Security 节点,你需要用repository owner 用户来登录.

注册owf_mgr 用户需要完成下列步骤:

1. 在Global Explorer 面板里 ,展开Security 节点,右键单击Users 节点并选择New.

注意:你必须保存所有你先前的更改或者还原你的更改,从Design 菜单里选择Save All

图32

2. 在Create User dialog ,你可以从已经存在的用户列表里面选择一个用户也可以新创建一个用户,这个用户将会自动被注册到Warehouse Builder 里面

从Available DB Users 列表里面选择owf_mgr 并点击 > 按钮来将它移动到右边的Selected Users List 里面

图33

单击OK.

3. 注意owf_mgr 用户被添加到了Security > Users 节点下面了.

图34

从Design 菜单里面选择Save All来保存所有修改。

设置安全首选项(Security Preferences)

为了设置安全首选项,执行以下步骤:

1. 从Tools 菜单下面选择Preferences.

图35

2. 在Preferences 窗口。选择Security Parameters ,在右边的面板中,选中Persist location password in metadata .

并且也选中Share location password during runtime

图36

单击OK ,从 Design 菜单里选择Save All 来保存你所做的更改。

用目标数据库位置连接到指定模块

当你导入了Start.mdl 文件之后,你已经同时有了DQ_TGT和DP_TGT 模块,你现在执行以下步骤来创建两个目标数据库用户,DQ_TGT 和DP_TGT 来引用DQ_TGT_LOCATION 位置 和DP_TGT_LOCATION 位置,现在,你需要分别把这两个模块和这两个位置连起来,从而让你无论是开发这个模块或者是部署这个模块这些对象都已经物理的存在了了你指定的位置。

为了用指定位置连接到模块,你需要执行以下步骤:

1. 首先,你需要在Connection Explorer 面板里面测试你的位置是否正确,展开Locations > Databases > Oracle

双击DP_TGT_LOCATION.

在弹出来的 Edit Oracle Database Location :DP_TGT_LOCATION 窗口中,在Password 里面输入密码,单击Test Connection 来验证连接信息.

图37

如果连接成功,单击OK ,如果不成功检查一下哪里出错了,并重新连接一次。

同样的,测试DQ_TGT_LOCATION 位置是否也是连接正常的,

图38

如果连接是正常的,单击OK

2. 在Project Explorer 面板里,展开Databases > Oracle .双击DP_TGT 。在EDIT Module DP_TGT 窗口里,选择Metadata Location 选项卡。从Locations 的下拉列表里面选择DP_TGT_LOCATION.

图39

现在,选择Data Locations 选项卡,从Available locations 列表里面选择DP_TGT_LOCATION 并把它移动到右边的Selected Locations 列表里面。

图40

单击OK.

2. 同样的,用DQ_TGT_LOCATION连接到DQ_TGT模块,双击DQ_TGT ,在Edit Module 窗口里,选择Metadata Location 选项卡,从Location的下拉列表里面选择DQ_TGT_LOCATION

图41

现在,选择Data Locations 选项卡,从左边的Available locations 列表里选择DQ_TGT_LOCATION 并把它移动到右边的Selected Locations 列表。

图42

单击OK.

4. 你同样也需要配置模块的数据位置,右键单击DP_TGT 并且选择Configure.

图43

Configuration Properties 窗口中,对于Location 的值,选择DP_TGT_LOCATION (Default) ,并且单击OK.

图44

5. 同样的,右键单击DQ_TGT 选择Configure .在Configuration Properties 窗口中,对于Location property 选择DQ_TGT_LOCATION(Default)

图45

单击OK.

从Design 菜单。选择Save All 来保存更改。

把原数据的元数据导入数据源模块。

在Oracle Warehouse Builder 里,你为了各种数据源而创建模块,比如基于Oracle 的关系型表,原数据的元数据,在后面的课程中你可能需要手工执行这一操作,你需要创建数据源模块指向一个Oracle 自带的样本数据库比如OE 和DQ_SRC ,其中DQ_SRC 是我们刚才导进去的

注意:根据你所选择将要进行的课程来创建相应的模块,当你创建了对应的数据源模块,你也需要用Import Metadata 向导创建对应的元数据

如果你打算进行Examining Source Data Using Data Profiling 或者Matching and Merging Records 课程,执行Importing metadata in DQ_SRC 模块,如果你打算进行Extracting ,Transforming and Loading Data 或者Using Experts to Automate Warehouse Builder Tasks课程,执行Importing Metadata in OE 模块,显然,如果你打算进行所有的课程,你应该执行所有的模块。

导入DQ_SRC 模块的元数据

导入OE 模块的元数据

导入DQ_SRC 模块的元数据

为了导入DQ_SRC 模块,执行以下步骤:

1. 首先,你需要创建DQ_SRC模块,这样你才能导入它的元数据

我们假设你用owb 用户登录,从Project Explorer面板里面选择HANDSON 项目,展开Database ,右键点击Oracle然后选择New

图46

Create Module 向导出现了,单击Next 来跳过欢迎页面。

2. 在Name and Description 页面,输入DQ_SRC 作为模块名,接受默认的模块状态Development 并且选择Data Source 作为模块类型.

图47

单击Next

2. 在Connection Information 页面,你必须指定数据源的位置,可以看到Oracle Warehouse Builder 已经给了默认的名字DQ_SRC_LOCATION1 .为了编辑详细信息点击Edit

图48

3. 在Edit Oracle Database Location DQ_SRC_LOCATION1 对话框里面,填入如下信息

Name : DQ_SRC_LOCATION (删掉后面的 1 )

User Name: DQ_SRC

Password: DQ_SRC

Host Name : 你的ip 或机器名

Port Number: 1521

Service Name : orcl 或你自己的数据库Service Name

Schema: DQ_SRC

Version : 10.2 或 11.1 ,更具你的数据库版本而定

点击Test Connection 来测试连接是否正确

图49

如果连接没有成功,检查连接的详细信息,然后点击OK

确保Import after finish 选项选中了,然后点击Next

图50

在summary 页面,检查详细信息,然后点Finish ,Import Metadata 向导出现,点击Next 来跳过欢迎页面。

5. 在Filter Information 页面,你可以选择你想要导入的数据对象类型,只选择Table 和View 然后点击Next

图51

6. 在Object Selection 页面,按住shift 键并且选择Tables and Views 然后点击中间的 > 按钮来把选择的对象移动到右边的Selected List 里面

图52

图53

单击Next

7. 在Summary and Import 页面,检查你要导入的对象的详细信息,一共要导入11个对象,顺序不重要,如果没问题就点击Finish

图54

在导入进程的进度条里面显示了导入的进度信息,在Import Result 窗口点击OK ,从Design 菜单选择Save All来保存所做的更改

导入OE 模块的元数据

为了导入OE 模块的元数据,执行以下步骤:

1. 首先,你需要创建OE 模块,

我们假设你用owb 用户登录,在Project Explorer 面板里面选择HANDSON 项目,展开Databases 节点,右键选择Oracle 并且选择New

图55

Create Module 向导出现了,点击Next 来跳过欢迎页面

2. 在Name and Description 页面,输入OE 作为模块名,接受Development 作为模块状态,然后选择Data Source 作为模块类型

图56

单击Next.

3. 在Connection Information 页面,指定数据源的位置,注意Oracle Warehouse Builder 已经给了一个默认的OE_LOCATION1 作为默认位置,选择Edit 来输入详细的信息

图57

4. 在Edit Oracle Database Location : OE_LOCATION1 页面里,输入如下信息:

Name: OE_LOCATION (删掉后面的 1 )

User Name: OE

Password: OE

Host Name: 你的ip 或机器名

Port Number: 1521

Service Name : orcl 或你自己的数据库 Service Name

Version : 10.2 或 11.1 更具你自己的数据库版本而定

单击Test Connection 来测试连接的正确性.

图58

如果连接没有成功,检查详细信息,然后点OK

确定 Import after finish 选项选中了,然后点Next

图59

Summary 页面,检查详细信息,然后点Finish ,Import Metadata 向导启动,点击Next 来跳过欢迎页面。

5. 在Filter Information 页面,选择你想要导入的数据库对象类型,接受默认的选择,单击Next

图60

6. 在Object Selection 页面,选择Tables 然后点击 > 按钮来把选择的对象移动到右边。

图61

图62

单击Next

7. 在Summary and Import 页面,检查你要导入的对象的详细信息,然后点Finish

导入进度条显示了导入的进度信息,当Import Results 窗口出现后单击OK,从Design 菜单选择Save All来保存所做的修改。在弹出来的警告对话框选择Yes 来保存。

总结

在这节课程中,你应该学会了如下知识:

为了后面的课程做准备工作

为了后面的Oracle Warehouse Builder 建立项目环境

导入数据源的元数据模块

ETLowb etl

Oracle Warehouse Builder 11g 教程 Part 1

2008年7月27日
没有评论

本系列教程翻译自OTN官方文档,为OWB的系列教程,全教程共12篇文章,我只介绍启中5篇,主要是想通过此教程向大家介绍OWB工具的的基本使用方法和数据仓库建模方法,由于水品有限,只能大体上保证翻译的通顺,如有任何不足之处请参考官方OTN文档.,文中很多英文词汇未翻译主要是为了配合截图

这系列文章也同时发表在itpub 上:

http://tech.it168.com/d/2007-12-28/200712271916501.shtml

http://tech.it168.com/d/2008-02-15/200802141542372.shtml

http://tech.it168.com/d/2008-02-27/200802271433072.shtml

转载注明出处 http://www.gemini5201314.net

原教程索引: http://www.oracle.com/technology/obe/11gr1_owb/index.htm

原教程列表如下:

1. Starting::

1 Starting with Oracle Warehouse Builder 11g Release 1 1

2 Working with Flat File Transactional Data

3 Designing the Relational Target Warehouse 5

4 Designing ETL Data Flow Mappings

5 Deploying Objects in the Target Warehouse

6 Loading the Target Warehouse

2. Extending:

1 Setting Up the Oracle Warehouse Builder Project 2

2 Examining Source Data Using Data Profiling 4

3 Matching and Merging Records

4 Extracting, Transforming and Loading Data 3

5 Modeling the Target Schema

6 Using Experts to Automate Warehouse Builder Tasks

只翻译其中5章,顺序如列表所示,本文所有图片来至OTN.,部分专业词汇尽量附上原英文单词.对于与程序有关的词汇尽量不翻译并给出原英文单词.,一些截图中的按钮部分单词也尽量是原文。

开始使用Oracle Warehouse Builder 11g R1

目的:

在这篇文章中,你会使用设置好的文件配置OWB11gR1 的环境,你可以创建一个Warehouse Builder 用户然后登录进去.

注意 : 这篇文章所使用设置脚本只能用于OWB11gR1, 以前版本教程在OTN上.

主题:

这篇文章讨论如下专题

总览

先决条件

引用材料

Warehouse Builder 11g 架构和组件

建立项目环境

介绍OWB程序组组件

登录到Design Center

总结

总览

在这篇文章中你将会学习到如何执行建立脚本和配置OWB环境,同时也将使用OWB Repository Assistant 来创建用户和登录到你的元数据储存仓库.

先决条件

为了成功完成这个指南,你应该执行下面操作

1 . 完成安装Oracle Database (Enterprise Edition) 10g R2 (patched to 10.2.0.3 for OLAP support) 或者11g R1.我们建议你为数据库命名为orcl ,否则,你需要将文中的数据库名字用你自己的数据库命名代替.

注意: 这篇文章所使用的脚本在OWB 11g R1 和Oracle Database 10g R2 上测试过.你可以选择在Oracle Database 10g R2(10.2.0.3) 上或者Oracle 11g R1 上运行脚本.

为了简化设置过程, 我们假设Oracle Database 和 OWB 11g 安装在同一台机器上.为了这次课程,我们强烈建议你在同一台机器上安装Oracle 和 OWB.

注意: 如果你使用OWB 11g R1 和Oracle Database 10g ,要确保OWB 安装在一个空目录中,而不是Oracle Home

2. 完成OWB 11g R1的安装.

注意: OWB 包含以下组件:

ETL Core feature: 这是随database standard edition 免费提供的核心功能, 核心ETL功能随database license提供大量核心功能

Enterprise ETL 选项: Enterprise ETL 选项提供支持大型伸缩和复杂部署功能,一些功能包括Type2 和 Type3 SCD 可传输表空间.,交互继承和分析影响 以及自定义对象.

Data Quality Option: Data quality 选项是为了支持将数据转换成可信赖数据的基础

Connectors : Connectors 允许客户快速连接和转换他们的CRM ,ERP 应用程序.包括以下一些connectors :

SAP ,Oracle EBusiness Suite, Peoplesoft 8/9 and Siebel

需要更多OWB信息,请阅读Oracle Warehouse Builder User’s Guide ‘Product Options and Licensing” 一章

参考材料

以下是有用的参考资料列表:

Oracle Warehouse Builder 11g Release 1:Document Library

Oracle Technology Network(OTN): OWB Collateral Library

Oracle University (5天课程) Oracle Warehouse Builder 10g.Implementation Part1 (3 天)

Oracle Warehouse Builder 10g.Implementation Part2 (2 天)

Warehouse Builder 11g 体系结构和组件

Oracle Warehouse Builder 是一个信息集成工具,它将数据转换成高质量的信息.Oracle Database 是OWB 体系结构的中心因为它储存着OWB的资源仓库和OWB产生的代码.

下面的这张图说明了OWB的主要组件.

Design Center 是用户用来完成designing, mapping , scheduling ,and deploying ETL processes 的界面.

所有的元数据都是储存在OWB的资源仓库中的,资源仓库是建立在Oracle Database上的,你可以用Repository Browser 去查询资源仓库中的元数据. 同样的经过ETL过程加载的目标数据库也是建立在Oracle Database 上的.

图1

Design Center

Design Center提供图形界面来处理ETL过程.

Control Center Manager

Control Center Manager 是Design Center 的客户端.Control Center Manager是一个全面的部署控制台让你能够查看和管理部署的方方面面

Target Schema

目标数据库是你用来装载数据的,它包括Cube , dimensions , views 和mappings。目标数据库包括Warehouse Builder 组件比如synonyms 用来帮助ETL 过程连接监控和服务包的资源仓库. 资源仓库储存所有的目标数据库信息比如执行和部署的信息.

注意 目标数据库不是Warehouse Builder 软件的组件而更多的是Oracle Database的已存在的组件.同样的,你可以关联多个目标数据库到同一个资源仓库里,你可以有1比1 或 1比多的目标仓库对资源仓库关系.

Warehouse Builder Repository

资源仓库储存所有的元数据定义包括所有的数据源,目标数据库,ETL过程和设计元数据.除了包含设计元数据之外, 资源仓库也包括运行时由Control Center Manager 和 Control Center Service 产生的运行数据

作为OWB安装的开始, 你会使用Repository Assistant 去创建一个资源仓库.你可以把OWB 11g资源仓库建立在Oracle Database 10gR2 或者Oracle Database 11g

About Workspaces

Workspaces定义了资源仓库,你可以创建一个或多个workspace,每一个workspace负责一组用户和他们相关的项目.一个公共的实践是为开发,测试和产品做单独的workspace.用这个实践后, 你可以让你的开发人员连接到开发和测试workspace,但是限制他们连接产品级workspace.

Repository Browser

Repository Browser是一个WEB用户界面让你查询资源仓库,你可以查看元数据,创建报表,审计运行操作.和交互式分析影响 (perform lineage and impact analysis).Repository Browser被组织用来查看设计相关的或控制中心相关信息.

Control Center Service

Control Center Service用来注册地点(Location)的组件,它可以部署和执行ETL逻辑比如mappings 和process flows

建立项目环境

为了部分填充你的资源仓库,你需要执行以下操作:

下载设置脚本

如果使用Oracle Database 10gR2,创建OWBSYS 用户并且允许连接Control Center 和 workspaces

创建Design Center 用户和资源仓库.

运行设置脚本.

下载设置脚本

1 . 下载owbdemo_files

2 . 打开owbdemo_files.zip 文件,解压到一个你熟悉的地方.

注意 : 如果你解压到 d:/ , 应该包括以下一些文件.

D:/newowbdemo/create_users.sql

D:/newowbdemo/createlocs.tcl

D:/newowbdemo/createprj.tcl

D:/newowbdemo/cube_sales.tcl

D:/newowbdemo/dim_channels.tcl

D:/newowbdemo/dim_customers.tcl

D:/newowbdemo/dim_products.tcl

D:/newowbdemo/dim_promotions.tcl

D:/newowbdemo/dim_times.tcl

D:/newowbdemo/load_channels.tcl

D:/newowbdemo/load_customers.tcl

D:/newowbdemo/load_products.tcl

D:/newowbdemo/load_promotions.tcl

D:/newowbdemo/load_sales.tcl

D:/newowbdemo/loadall.tcl

D:/newowbdemo/loadrolapsales.tcl

D:/newowbdemo/loadsalesmaps.tcl

D:/newowbdemo/loadxsales.tcl

D:/newowbdemo/owbdemoinit.tcl

D:/newowbdemo/sequences.tcl

D:/newowbdemo/sourcefiles/export.csv

D:/newowbdemo/sourcefiles/expense_categories.csv

确保 export.csv 文件和 expense_categories.csv 文件在newowbdemo 文件夹下的 sourcefiles 子文件夹下.

3 . 可选择性下载xsales.zip 文件

注意: 这是一个可选项除非你想做额外的练习.

如果使用Oracle Database 10gR2,创建OWBSYS 用户并且允许连接Control Center 和 workspaces

注意: 如果你使用Oracle Database 10g R2,你需要执行以下操作.

如果你使用Oracle 11g ,跳过这一步

1. 你需要运行一个脚本来创建OWBSYS 资源仓库模式.Oracle 11g 默认自带的,但是Oracle 10g R2需要手工运行.

这个脚本在 <your OWB home>/OWB/UnifiedRepos/cat_owb.sql .

注意: 你执行sqlplus 的方法非常重要:不要从 Start > Programs > Oracle Database Home Folder 或者Warehouse Builder folder .相反,应该从 Start > Run > cmd.exe.输入路径并回车.你需要确定Warehouse Builder是最前面的路径从而让SQL Plus会话从Warehouse Builder 安装的地方执行起.,如果不是的话你需要临时制定path 变量,比如Path = <Warehouse Builder home>/bin 然后用具有sysdba 权限的sys 用户登录,比如,在命令行下输入: sqlplus sys/<sys password> as sysdba

作为sysdba连接到SQL Plus 实行以下命令:

@<your owb home>/owb/UnifiedRepos/cat_owb.sql

回车,你需要输入OWBSYS 用户所使用的表空间.强烈建议你使用默认的USERS 表空间. 输入users 然后回车.

图2

当这条命令成功执行后,将会显示下面这句话

“If you are NOT using an OWB installed in the Oracle database home, please now run reset_owbcc_home”.

2. 先前,我们建议安装Warehouse Builder在不同于Oracle Database Home目录的地方,为了确保能在Oracle 10gR2访问Control Center ,运行UnifedRepos/reset_owbcc_home.sql 并把Warehouse Builder Home 环境变量传给它,这个脚本需要sys 权限的用户,比如键入如下命令:

SQL>@c:/oracle/OWB_HOME_11G/owb/UnifiedRepos/reset_owbcc_home;

回车确认,你将会要求输入完整的OWB Control Center 安装目录,先注意以下注释.

注意:在后面的例子中我们使用”/” 即使是在Windows操作系统中,完整的路径一定是大小写敏感的,一定要确认驱动符号是大写的,比如”C”,并且后面的文件夹名都是大小写敏感的,比如如下例子:

C:/oracle/OWB_home_11g

输入回车

3. 如果数据库启用的增强密码选项,那么创建OWBSYS之后,你需要解锁(unlock) OWBSYS帐号和解封(unexpired)它的帐号,用第二个或第三个SQLPLUS命令行来解锁 OWBSYS 并给他一个新的密码.

alter user OWBSYS account unlock ;

alter user OWBSYS identified by OWBSYS ;

上面的解释在OWB 11G Installation Guide documentation 里面有,在“Hosting the Repository on Oracle Database 10g R2” 章节.

4. 对于每一个Warehouse Builder 客户端安装都需要能够连接到10gR2 的workspaces.

OWB11g 的客户端默认的workspaces是建立在11g Database上的,也就是说,Warehouse Builder repository 是假设安装在Oracle 11g 上的.

为了能够连接10gR2的repository和它的workspaces,修改你机器上的<owb_home>/owb/bin/admin/Preference.properties文件.如果这个文件不存在用在同一个目录下的示例文件Preference.properties.tmp 创建它.

在preference.properties 文件中,添加REPOS_DB_VERSION_ALLOWED 并将它的值设成Oracle 10g,Oracle 11g (也许11g已经存在了)

创建Design Center 用户和Repository

1. 当第一次登录到OWB Design Center时,你需要创建一个能够登录的用户,创建一个workspace ,一个新的workspaces 用户并且安装Warehouse Builder repository.

选择 Start > Programs > {your OWB11g client home} > Warehouse Builder > Design Center

出现Design Center 的登录画面.

图3

如果没有看见workspace Management 按钮,点上面的Show Details 按钮,单击Workspace Management.然后出现Repository Assistant 向导的欢迎环面.,点Next

图4

2. 在Database Information 里输入如下信息.

Host Name 你的ip
Port Number 1521
Oracle Service Name orcl (或者你的sid)

图5

点击 Next.

3. 在Choose Operation 窗口中,选择 Manage Warehouse Builder workspaces

图6

点击Next

4. 在Choose Workspace Operations 窗口,点击Create a new Warehouse Builder workspace

图7

点击 Next

5. 在New or Existing User 窗口中,单击Create a workspace with a new user as workspace owner.

图8

单击 Next.

6. 在DBA Information 窗口,输入如下值

User Name system
Password oracle

图9

单击Next.

7. 在Workspace Owner (New) 窗口,输入如下值:

Workspace Owner’s User Name rep_owner
Workspace Owner’s Password rep_owner
Workspace Owner’s Password Confirmation rep_owner
Workspace Name my_workspace

图10

单击Next.

8. 在 OWBSYS Information 窗口,输入如下值:

User Name OWBSYS
Password owbsys

图11

单击Next.

9. 在Select Tablespaces 窗口,接受所有默认的选项,单击Next.

图12

10. 在Select Languages 窗口,接受默认值并单击Next.

图13

11. Workspace Users (可选项) 窗口允许你选择已经存在的数据库用户或新创建一个用户来当 workspace user

如果你先前没有指定的workspace owner ,那你需要新建一个数据库用户来当workspace user, 单击Create New User.

图14

12 .在Create New Database User 窗口里,输入如下值:

User Name Rep_user
Password Rep_user
Re-enter Password Rep_user
DBA User Name SYSTEM
DBA User Password Oracle (你的system 密码)

图15

13. Workspace Users (可选项)窗口出现,新的 rep_user 在右边的Selected List 里面

图16

单击Next.

14. 在 Summary 窗口中,检查所有的信息然后单击Finish.

图17

15. 在Installation Progress窗口出现后. 安装 OWBSYS 用户和 repository owner 需要花费大概几分钟的时间

图18

16. 在 Installation Successful 窗口出现后,单击 OK, Repository Assistant 窗口会关闭.

如果Design Center Logon 窗口还在的话,单击 Cancel 关闭它,在Warehouse Builder Warning 窗口中,单击Yes 退出Warehouse Builder. 你等会儿要重新登录.

Run the Setup Scripts

1. 在你开始之前,你必须要从下载的文件 owbdemo_files.zip文件中运行一些脚本.

注意:下面的课程中的目录的屏幕截图中我们假设你使用D:盘,如果你使用的是C:盘,替换相应的位置.

用sys登录到SQL*Plus ,并且运行你下载的 D:/newowbdemo| 文件夹下的create_users.sql

@d:/newowbdemo/create_users.sql;

图19

退出 SQL*Plus

注意: create_users.sql 脚本将会创建两个用户: xsales 和 eul_from_owb .如果你打算用 xsales 原数据文件进行可选择的课程,你需要也把下载下来的xsales.zip 文件解压出来的xsales.dmp 导入到数据库.

你可以选择性的导入 xsales 数据.

注意:导入xsales.dmp 文件是可选择性的除非你想要自己做以下练习.

如果你想要导入的话,执行以下命令:

<database ORACLE_HOME>/BIN/IMP XSALES/XSALES@<ORCL 或者 你的数据库service name

file=<PAHT>/xsales.dmp full=y

把其中的<ORACLE_HOME>替换成你自己的oracle database home path 并把文件的位置替换到你解压xsales.dmp 文件的位置.

2. 现在你需要运行一个 tcl 脚本来预定义OWB Project. 首先,你需要编辑owbdemoinit.tcl 脚本,它定义了一些变量将会被其他的tcl 脚本调用. owbdemoinit.tcl 脚本提供给你这些如下这些变量,编辑这些变量以使它满足你的电脑环境变量设置

set owbclient rep_owner
set owbclientpwd rep_owner
set sysuser sys
set syspwd oracle
set host localhost
set port 1521
set service orcl
set project OWB_DEMO
set sourcedir d:/newowbdemo
set dataspace USERS
set indexspace USERS
set tempspace TEMP
set snapspace USERS
set sqlpath d:/oracle/10.2.0.3/db_1/BIN
set sid orcl
set workspaceOwner rep_owner
set workspaceName my_workspace

你需要设置所有的这些变量,’set sqlpath’ 语句应该指向你的Oracle Database home 目录.

注意:这个脚本是运行在默认的tablespace 之上的,我们建议你使用默认的tablespace 。如果你需要运行这些脚本在你自己的项目上的话,你需要手工编辑多个这样的脚本。

3. 为了运行 tcl 脚本,你需要启动 OWB Plus 环境, 有两种方法启动 OWB Plus :在Design Center 里面,你可以从 Windows 菜单选择 OWB Plus 然而,对于这次示例,我们选用其他方式来启动OWB Plus 环境,

Start > Programs > {Oracle OWB11Gr1ClientHome> Warehouse Builder > OWB Plus

在 OWB+> 提示符下输入cd 命令进入到你的下载文件解压目录

cd d://newowbdemo//

在这个命令之后,输入source 命令.第一个source 命令执行 owbdemoinit.tcl 脚本,它包含预定义的一些环境变量设置,第二个source 命令执行 loadall.tcl 脚本,它会依次加载所有的其他脚本.

source owbdemoinit.tcl

输入回车

source loadall.tcl

输入回车

这个脚本应该以一个 “Disconnected”结束并且最后回到 OMB+> 提示符环境.

这个脚本定义了一部分我们需要创建的OWB_DEMO Project的数据,我们等下会在OWB Project 上工作.

介绍OWB 程序组组件

你现在需要检查一下你的OWB 安装组成.

1. 选择 Start > Programs > {Oracle – OWB11gR1clientHome} > Warehouse Builder > Administration .这会显示一些OWB 产品的组件.

图20

2. 查看一下如下菜单选项

Administration Repository Assistant 用来创建和映射OWB repository 和用户的
  Start/Stop Control Center Service 用来启动和停止OWB Control Center
Design Center 主要的客户端,用来定义数据源,目标,ETL mapping 和转换的
Documentation 这会把你重定向到OWB 的OTN 上.
OMB Plus 用来执行tcl 脚本的环境
Repository Browser 用来执行查询和检查repository 设计和control center 元数据的

登入到 Design Center

为了启动OWB Design Center,执行以下步骤:

1. 选择 Start > Programs > {Oracle – OWBclientHome} > Warehouse Builder > Design Center.

Design Center Logon 窗口会出现,输入rep_owner 做用户名和密码,默认的Connection details 选项是选上了的.

如果你不能看到Connection details 选项,单击Show Details.

输入主机名或者你的电脑名字, port : 1521 , 选择orcl 作为你的数据库service name . 单击OK

图21

2. Design Center 出现了,Design Center 被分成了三个面板:Project Explorer , Connection Explorer 和Global Explorer

在Project Explorer 面板里面左边包含两个Project: MY_PROJECT, 一个OWB创建时就有的默认的空的项目.,另一个是:OWB_DEMO,一个我们刚才用脚本预先定义的项目

图22

3. 一个项目是一个包含设计任务的容器,当你创建了一个项目后,你就可以创建其他的OWB 对象了.

Warehouse Builder 包含 wizards . object editors, property sheets 和 object finding tools 来帮助你设计和实现你的商业智能系统.

在Project Explorer 面板导航树下面,展开OWB_DEMO project, 一大堆的东西出现在树下面:Database , Files , Applications , Data Profiles,等等.

展开Database 节点,你将会看到一堆object types 用来设计你的Warehouse 的,:Oracle databases, Non_Oracle databases, 和 可传输的模块 (Transportable modules)

展开Oracle 节点,你将会看到两个已经预先定义的模块 : SALES_WH 和 XSALES .

模块 (Modules) 是用来把逻辑上的原数据库定义或者目标数据库定义分组的.

图23

4. 展开SALES_WH 模块,一些对象类型出现在了树下:mappings , transformations , dimensions ,cubes, tables 等等,你可以展开其中一些节点来看看我们预先用脚本定义了哪些东西.

图24

总结

在这节课程中,你应该学到了如下一些东西:

下载和执行设置脚本来为后面的课程做准备.

创建OWB Design Center 用户和安装Repository

登录到OWB Design Center 并打开一个OWB 项目.

你可能感兴趣的:(oracle,数据分析,数据库,workflow,脚本,database)