




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Informatica PowerCenter 8.6全量与增量总结太阳团队文档变更记录版本编号变更人变更日期备注V1.0郭鹏飞2014-5-27目 录ETL全量与增量3设置Oracle连接3设置时间变量3ETL全量4整个过程预览42创建一个Mapping43源与目标的导入5导入源5导入目标表64 组建Mapping7打开源节点7插入“表达式组件”7添加字段7添加字段或修改字段类型8添加目标表8添加删除条件9连接目标表9ETL增量10整个过程预览10组建Mapping10添加Lookup Transformation11时间戳的定义11Epression transformation设置12添
2、加Update Strategy Transformation12测试14注意事项全量16全量16注意事项增量17ETL全量与增量设置Oracle连接在oracleproduct10.2.0db_1networkADMIN路径下,双击文件,对oracle连接进行配置。例如:ods = (DESCRIPTION= (FAILOVER = yes) (ADDRESS = (PROTOCOL = TCP)(HOST =10.100.20.11)(PORT = 1521) (ADDRESS = (PROTOCOL = TCP)(HOST =10.100.20.13)(PORT = 1521) (CON
3、NECT_DATA =(SERVER = DEDICATED) (SERVICE_NAME = cedb) ) )这个是ODS的连接地址。设置时间变量点击Mapping,选择,在点击。ETL全量ETL全量,即将源库里的数据全部导进目标库,其重要注意的是,可能要添加'ETL_DATE'这个字段。整个过程预览2创建一个Mapping(1)单击Mapping,点击create这个是给Mapping起名字,起名规则:M_目标表表明。例如:M_ ODS_CE_BORROW_CONTRACT(2)单击Mapping,点击Edit可以修改Mapping名,修改完成之后点击OK3源与目标的导入
4、导入源(Source Analyzer)点击这个按钮在工具栏点击Sources这个按钮点击Import from Datebase点击(如果已有ODBC data source,则直点击进行选择)点击添加,选择Oracle in .(如果要是MySQL的源就选择上面的MySQL ODBC )这里是数据库配置的名字这里是源文件夹中的名字完成后点击OK。输入用户、密码 点击Connect 即可(注:我的ODBC data source:ODS(OraDb10g_home2)是我自己配置的,一般的是ODS(OraDb10g_home1)当其显示Re-connect时,表示连接上了源数据库。展开这两个
5、节点,单击所需要的源表,点击OK即可。导入目标表(Target Designer)点击这个按钮其他的步骤与导入源一直,可参考上边的文档。4 组建Mapping(Mapping Designer)点击这个按钮打开源节点选择这个节点并打开。选择你的源表,点击右键,选择Open.这样源表就会在右边的Designer界面显示了。插入“表达式组件”点击F(x)组件,在右侧Designer界面在单击一下。添加字段将源中的字段全选,拖入表达式组件中。添加字段或修改字段类型有的目标表可能比源表多了一个'ETL_DATE',这时候需要我们在Mapping过程的Expression Transfo
6、rmation这个组件,添加一列,命名为'ETL_DATE',字段类型 为'date/time'且只输出(O),在后面条件框里边输入'TO_DATE($today,'yyyy-mm-dd hh24:mi:ss')' 注:$today 是在Mapping中自己定义的时间变量!有的源表与目标表的字段类型不一样,这时候需要我们在Mapping过程的Expression Transformation这个组件中转换一下字段类型。例如:源表中的ahead_time的字段类型是nstring型,而目标中字段类型 为'date/time&
7、#39;,这时我们需要转换。双击表达式组件,选择Ports页,点击选中ahead_time行,单击复制在点击粘贴单击按钮,在弹出来的对话框内写入to_date(ahead_time,'yyyy-mm-dd hh24:mi:ss')输入完成后点击Validate,显示successfully后即转换成功,点击确定->OK->确定即设置成功。添加目标表打开Targets节点,选择目标表。右键->Open,这时右边的Designer界面就会显示目标表。添加删除条件这里'Truncate清除表中数据'是指清除目标表中的数据,这样从源表过来的数据就不会有
8、重复。双击目标表,选择Properties页,在Pre SQL中添加.Truncate table +目标表表名。连接目标表首先单击表达式组件在菜单栏选择Layout在单击,此时会弹出一个界面。选中目标表,选择Name,点击OK,这样表达式组件就与目标表连接起来了。ETL增量ETL增量,即将源库里的数据更新到目标库中,用Update实现,更新掉原有的旧数据,添加原来没有的新数据。整个过程预览组建Mapping导入源、目标表、表达式组件与全量的过程是一样的,在这里就不详细讲解了。添加Lookup Transformation添加一个Lookup Transformation,选择目标表,删除 除
9、 %ID%以外的列,并且添加一个列%ID1%,并且只为输入(I). 在Condition中添加一个条件 %ID%=%ID1%.时间戳的定义时间戳的定义,即在做更新时,利用Creat_time和Lastupdate或者operate_time作为条件(三者选其一或者其二都可以),来筛选数据。在SQ中Properties的Source Filterz中添加条件,具体如下:双击(TO_DATE(create_date,'yyyy-mm-dd hh24:mi:ss') >=TO_DATE('$start_date','yyyy-mm-dd hh24:mi:
10、ss')and TO_DATE(create_date,'yyyy-mm-dd hh24:mi:ss') <=TO_DATE('$end_date','yyyy-mm-dd hh24:mi:ss')or(TO_DATE(OPER_DATE,'yyyy-mm-dd hh24:mi:ss') >=TO_DATE('$start_date','yyyy-mm-dd hh24:mi:ss')and TO_DATE(OPER_DATE,'yyyy-mm-dd hh24:mi:ss&
11、#39;) <=TO_DATE('$end_date','yyyy-mm-dd hh24:mi:ss')注:这里边$today,$start_date,$end_date 是在Mapping里边自己定义的。Epression transformation设置创建一个Epression transformation组件,将SQ里的列全部拖到Epr里边,在添加一个%ID1%字段,添加条件' :LKP.LKPTRANS(%ID%) '且只为输出(o).添加Update Strategy Transformation添加Update Strateg
12、y Transformation组件,将Epr中的字段全部拖进来,在Properties的 Update Strategy Epression中添加条件,条件如下:iif(isnulL (%ID1%),DD_INSERT,DD_UPDATE),这个是链接之前的Lookup Transformation的条件。双击测试1.点击,进入Workflow Manager。2.再右侧里边选择创建Mapping的文件夹。3.创建一个Session, 点击Tools4.选择Workflow Designer5.点击6.点击Create7.会弹出来这个对话框,这个名字可以自己随便起一个,但是前缀要是WF_,然
13、后点击OK 。8在工具栏点击这个组件,在下边的Workflow Designer界面,点击左键。9. 选择自己的Mapping,点击OK。10. 点击这个按钮将他俩连上。11.配置Session双击,选择Mapping页这三个是都要设置的(在全量Mapping中没有LKPTRANS)。将选择成自己数据库所对应的连接。选择完成之后点击确定。11.添加数据进行测试(1)全量测试:在源的数据库里边添加多条字段(在PL/SQL中进行操作)然后点击选择,之后就开始跑数据展开节点选择自己的工作流。查看是否成功。同时查看一下目标表里边是否增加了刚才添加的字段。(2)增量测试:增量测试的步骤与全量差不多,只是
14、增量添加、更新都有(要在时间戳范围内添加、更新),同时在源表中添加、更新多条字段。之后运行Mapping,查看目标表中是否添加、更新字段。注意事项全量全量1. 如果是从别的库抽到ODS库,那么我们需要在表达式组件中设置ETL_DATE:TO_DATE($TODAY,YYYY-MM-DD HH24:MI:SS) 2. 如果有时间变量($today),是否mapping中设置了时间变量。设置时间变量时间变量的设施方法点击Mapping,选择,在点击。3. 在mapping中是否truncate tbale目标表下的4. 在建立session时,首先 看workflow中是否有调用时间参数的文件。$
15、PMTargetParamDay.txt(时间参数文件)5. 在session中查看target中Target load type:是否为Normal6. 如果只是修改已有的全量mapping,在session里target中要注意 以具体情况勾选这一项!注意事项增量1. Lookup组件中设置:2. 时间戳的设定:(TO_DATE(create_date,'yyyy-mm-dd hh24:mi:ss') >=TO_DATE('$start_date','yyyy-mm-dd hh24:mi:ss')AndTO_DATE(create_da
16、te,'yyyy-mm-dd hh24:mi:ss') <=TO_DATE('$end_date','yyyy-mm-dd hh24:mi:ss')or(TO_DATE(OPER_DATE,'yyyy-mm-dd hh24:mi:ss') >=TO_DATE('$start_date','yyyy-mm-dd hh24:mi:ss')AndTO_DATE(OPER_DATE,'yyyy-mm-dd hh24:mi:ss') <=TO_DATE('$end_date','yyyy-mm-dd hh24:mi:ss')3. 设定时间参数:参考上文参考上文的 时间变量设置方法。4. 如果是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 财务审计工作计划
- Question tags(教学设计)-2024-2025学年人教版英语九年级上册
- 六年级上册数学教案- 6.4 百分数和分数的互化|苏教版
- Unit 1 Making friends 第四课时(教学设计)-2024-2025学年人教PEP版(2024)英语三年级上册
- 2025年租房合同2年模板
- 2024年五年级英语下册 Unit 1 How Are You Feeling Now第1课时教学实录 陕旅版(三起)
- Unit 4Topic2教学设计 2024-2025学年仁爱科普版八年级英语上册
- 少先队入队教育主题班会
- 2024-2025学年人教版(2024)信息技术四年级上册 第8课编码管理我知道 教学设计
- 四年级上册数学教案-9.4 统计天地丨苏教版
- 专利管理制度管理办法
- 拖拉机和联合收割机驾驶人身体条件证明
- 机电控制与可编程序控制器课程设计
- 广联达钢筋输入规则
- 基于ADAMS的悬置刚度仿真指南
- 弯矩二次分配法EXCEL计算
- 分数小数混合运算练习80题
- 童话故事《老鼠搬鸡蛋》.ppt
- 偏差管理和CAPA_王丽丽
- 北京大学数学物理方法经典课件第五章——傅里叶变换
- 消防安全知识壁报-08灭火器作用及使用方法识别1
评论
0/150
提交评论