InformaticaPowercenter基础开发实例.docx
- 文档编号:11528601
- 上传时间:2023-06-01
- 格式:DOCX
- 页数:30
- 大小:1.71MB
InformaticaPowercenter基础开发实例.docx
《InformaticaPowercenter基础开发实例.docx》由会员分享,可在线阅读,更多相关《InformaticaPowercenter基础开发实例.docx(30页珍藏版)》请在冰点文库上搜索。
InformaticaPowercenter基础开发实例
Informatica-Powercenter基础开发实例
Infa开发实例
1实例:
客户维表抽取(dim_customer)
1.1数据库配置信息
1.1.1数据源
数据库类型
oracle
服务器IP
10.1.0.112
访问IP
访问用户
系统性质
xxx系统
数据库
数据库名称(SID)
用户名
密码
Oracle
dev
Abc
Abc
1.1.2目标库
数据库类型
oracle
服务器IP
10.1.0.113
访问IP
访问用户
系统性质
数据仓库
数据库
数据库名称(SID)
用户名
密码
Oracle
dev
DW
DW
1.2详细设计
1.2.1基础信息
目标位置:
数据仓库
实现目标:
抽取客户维表数据进入数据仓库供BIEE平台展现
功能要求:
目标表名:
dim_customer
来源表:
Hz_Parties、hz_cust_accounts
数据筛选条件:
数据更新频率:
每月
1.2.2口径说明
字段名
字段类型
字段描述
数据源
字段
转换规则
备注
row_id
number
序号
market_code
varchar2(50)
市场编码
market_name
varchar2(100)
市场名称
customer_code
varchar2(50)
客户编码
hz_cust_accounts
account_number
customer_name
varchar2(200)
客户名称
Hz_Parties
party_name
取数规则:
selectrownum,'','',hca.account_number,ap.party_name
fromHz_Partiesap,hz_cust_accountshca
whereap.party_id=hca.party_id
ETL说明:
Mapping:
M_DIM_CUSTOMER_Inc
Workflow:
WF_DIM_CUSTOMER_Inc
更新方式:
全量抽取
1.3抽取步骤
1.3.1定义源
1.打开Designer,选择“源->从数据库导入”,导入源表结构
2.选择“源->从数据库导入”后出现如下提示框,若未配置源数据库的odbc,则需要先配置,可点击如下图的“…”进行配置
3.在弹出的ODBC中,选择系统DSN,添加按钮,选择想为其安装数据源的驱动程序
4.这里我们选择oracleinoraclient10g_home1,弹出如下框,进行配置,tnsservicename为本机配置的tns连接,这里不再详述
5.配置完我们可以点击测试,看是否能连通数据库
6.配置完odbc,我们选择相应的odbc连接,输入用户名密码连接erp数据库,也可以在搜索栏填入指定的表,然后选择导入
7.用同样的方式,我们将Hz_Parties表导入designer
1.3.2定义目标
1.导入目标表的方式与导入源的方式基本一致,首先选择“目标->从数据库导入”
2.选择我们配置好的odbc,输入目标库的用户名,密码
1.3.3创建映射
1.选择“映射->创建”,输入映射的名称,映射命名建议以“M_目标表名_Inc”方式来创建
2.创建完映射,将刚才导入的两张源表拖入映射工作区中
3.将我们需要的字段拖入join组件中,并join组件设置两张表的关联条件
4.双击sourcequalifier组件,在“属性”的sqlquery中点击“生成sql”,这样在任务抽取的时候,直接根据sql获取源表相应字段的数据,而不是将整张表的所有字段全部加载的informatica中
4.生成的sql或者开发人员修改了sql后,可以点击“验证”,看sql的语法是否正确
5.将序列号组件和目标表拖入到工作区中,并将我们通过join组件关联后需要的字段与目标表关联,序列号组件中的序列也与目标表中的rowid字段关联,与目标表关联后,整个映射工作也就完成了
1.3.4定义任务
1.打开workflow工具,选择“工作流->创建”,输入工作流名称,工作流命名建议以“WF_目标表名_Inc”的方式
2.点击确定后,工作流创建成功,如下图所示
1.3.5创建会话任务
1.点击工具栏上的“session”组件按钮进行创建会话任务
2.弹出如下选框,选择我们刚刚做好的映射,点击确定
3.点击工具栏的“链接”组件,将“启动”与会话任务进行连接
4.点击“连接->关系”进行数据库连接的配置
5.点击“新建”,选择oracle然后选择确定
6.在弹出的如下框中进行配置,连接字符串中的oracle_crp为服务器上对应的tns连接串
7.双击会话任务,在映射选项中进行数据源和目标的配置
8.在连接类型中选择我们配置好的数据源,源和目标的数据源都要一一配置,如下图
9.目标表配置中,targetloadtype属性中我们一般选择normal选项,bulk有时候会报错,对于维表的抽取,我们一般采用全量的方式抽取,所以勾选truncatetargettable属性
1.3.6监控工作流
1.工作流及会话任务创建完成后,在工作流空白工作区右键->启动工作流
2.启动workflowmonitor,可以监控工作流的执行情况
2实例:
收入分析事实表抽取(ft_income_structure)
2.1数据库配置信息
2.1.1数据源
数据库类型
oracle
服务器IP
10.0.0.206
访问IP
访问用户
系统性质
ERP系统
数据库
数据库名称(SID)
用户名
密码
Oracle
dev
apps
apps
2.1.2目标库
数据库类型
oracle
服务器IP
10.0.0.207
访问IP
访问用户
系统性质
ODS中间库
数据库
数据库名称(SID)
用户名
密码
Oracle
hyperion
INFO_ODS
INFO_ODS
2.2详细设计
2.2.1基础信息
目标位置:
ODS中间库
实现目标:
抽取收入分析数据进入ODS中间库
功能要求:
目标表名:
MT_INCOME_STRUCTURE
来源表:
Ra_Customer_Trx_All
Ra_Customer_Trx_Lines_All
RA_CUST_TRX_LINE_GL_DIST_ALL
Hz_Parties
HZ_CUST_ACCOUNTS
gl_code_combinations
FND_FLEX_VALUE_SETS
FND_FLEX_VALUES_VL
mtl_system_items_b
数据筛选条件:
数据更新频率:
每月
2.2.2口径说明
字段名
字段类型
字段描述
数据源
字段
转换规则
备注
MONTH_ID
NUMBER
月份
RA_CUST_TRX_LINE_GL_DIST_ALL
gl_date
to_char(gl_date,'YYYYMM')
ORG_ID
NUMBER
组织
gl_code_combinations
segment1
PRODUCT_ID
NUMBER
产品
mtl_system_items_b
segment1
ACCOUNT_ID
NUMBER
科目
gl_code_combinations
segment3
CUSTOMER_ID
NUMBER
客户
HZ_CUST_ACCOUNTS
account_number
INDEX_VALUE
NUMBER
指标值
RA_CUST_TRX_LINE_GL_DIST_ALL
amount
取数规则:
selectrac.account_numbercustomer_id,
to_char(gd.gl_date,'YYYYMM')month_id,
gcc.segment1org_id,
gcc.segment3account_id,
msi.segment1product,
sum(gd.amount)data_value
fromRa_Customer_Trx_Allct,
Ra_Customer_Trx_Lines_Allctl,
RA_CUST_TRX_LINE_GL_DIST_ALLgd,
Hz_Partieshp,
HZ_CUST_ACCOUNTSRAC,
gl_code_combinationsgcc,
FND_FLEX_VALUE_SETSFFS,
FND_FLEX_VALUES_VLFFV,
mtl_system_items_bmsi
wherect.customer_trx_id=ctl.customer_trx_id
andgd.customer_trx_id=ct.customer_trx_id
andgd.customer_trx_line_id=ctl.customer_trx_line_id
andhp.party_id=rac.party_id
andct.bill_to_customer_id=rac.cust_account_id
andgd.account_class='REV'
andgd.amountisnotnull
andgd.amount<>0
andgcc.code_combination_id=gd.code_combination_id
ANDgcc.chart_of_accounts_id=50368
andFFS.FLEX_VALUE_SET_ID=1014869
andFFV.FLEX_VALUE_SET_ID=FFS.FLEX_VALUE_SET_ID
andFFV.Flex_Value=gcc.segment3
andsubstr(ffv.FLEX_VALUE,1,1)='6'
andmsi.organization_id=81
andmsi.inventory_item_id=ctl.inventory_item_id
groupbyrac.account_number,
to_char(gd.gl_date,'YYYYMM'),
gcc.segment1,
gcc.segment3,
msi.segment1;
ETL说明:
Mapping:
M_MT_INCOME_STRUCTURE_Inc
Workflow:
WF_MT_INCOME_STRUCTURE_Inc
更新方式:
第一次全量抽取,之后每月增量抽取
2.3抽取步骤
2.3.1定义源
1.由于抽取任务涉及源表过多,关联关系复杂,并且已经写出数据的sql口径,我们直接获取sql语句生成的数据即可,点击“源->创建”,输入创建表的名称
2.双击我们创建出来的表,添加表字段
2.3.2定义目标
参照1.3.2,导入后如图所示
2.3.3创建映射
1.参照1.3.3的方式创建映射
2.在sourcequalifier中的写入我们写好的sql口径
2.3.4定义任务
参照1.3.4
2.3.5创建会话任务
参照1.3.5
2.3.6监控工作流
参照1.3.6
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- InformaticaPowercenter 基础 开发 实例