Datastage开发经验
- 格式:docx
- 大小:1.65 MB
- 文档页数:34
常用组件使用方法:1.Sequential file功能特点:适用于一般顺序文件(定长或不定长),可识别文本文件或IBM大机ebcdic文件。
使用要点:按照命名规范命名点住文件,双击鼠标,在general说明此文件内容,格式,存储目录等。
2.Annotation功能特点:一般用于注释,可利用其背景颜色在job中分颜色区别不同功能块3.Change Capture Stage功能特点:Change Capture Stage有两个输入,分别标记为before link 及after link。
输出的数据表示before link 和after link的区别,我们称作change set。
Change Capture Stage可以和Change Apply Stage配合使用来计算after set。
使用要点:key及value的说明:key值是比较的关键值,value是当key值相同是作进一步比较用的。
change mode选项说明:All keys,Explicit Values需要指定value,其余字段为keyExplicit Keys&Valueskey及value都需要指定Explicit Keys,All Values需要指定key,其余的字段为value输出策略说明:Drop Output For CopyFalse:保留before及afte link中key值相同的行True:删除before及afte link中key值相同的行Drop Output For DeleteFalse:保留before link中有但是after link中没有的key值所在的行True:删除before link中有但是afte link中没有的key值所在的行Drop Output For EditFalse:保留key值相同,value不同的行True:删除key值相同,value不同的行Drop Output For InsertFalse:保留before link中没有但afte link中有的key值所在的行True:删除before link中没有但afte link中有的key值所在的行4.Copy Stage功能说明:Copy Stage可以有一个输入,多个输出。
1.导入表结构导入表BI_ERP.HZ_CUST_ACCT_SITES_ALL,BI_ERP.HZ_LOCATIO的表结构,出现报错提示:点击“是”后,出现如下提示:问题原因:这两张表有些字段的类型(例如CLOB)在DataStage中不被识别。
解决办法:不用导入办法第一个Orchestrate Schema Definition 而使用Plup-in Meta Data Definitions2.数据库数据库连接问题在开发作业时候,使用view data出现报错提示问题原因:第一个提示是数据库没启动。
第二个提示服务器DATASTAGE的服务器里面没有配置TNS,或者填错DATASOURCE名字。
解决方法:启动数据库服务,配置好DataStage中的TNS数据库用户权限⑴.把数据从业务库导入到ODS层,源数据Oracle Enterprise Stage使用view data时,出现报错提示:问题原因:用户权限不足,赋予select权限解决方法:赋予用户select权限,⑵.开发JOB BL_PUB_SALER_DIM作业时,使用VIEW DA TA时,出现报错提示:问题原因:未对BI_PUB用户赋予dba_extents权限解决办法:赋予BI_PUB用户dba_extents权限⑶.开发JOB‘销售员维’,JOB运行后,出现报错提示:问题原因:BI_PUB没有BI_APP使用权限解决办法:把使用权限赋予BI_PUB用户grant all on BI_APP.BL_PUB_PRODUCT_DIM_S to bi_pub ⑷.在开发JOB时,出现报错提示:问题原因:USER的SRC表和OPEN COMMAND的表USER冲突,权限不足解决解决:用BI_PUB用户登录授权:GRANT DELETE ON BL_PUB_INDUSTRY_DIM_C TO BI_ODS;⑸.在开发JOB时,出现报错提示:问题原因:BI_PUB权限不足解决描述:用DBA用户登录授权GRANT SELECT ON SYS.DBA_EXTENTS TO BI_PUB3.加载字段中间落地stage为DATA SET,作为另一个JOB源数据时的时候,VIEWDATE看不到数据问题原因:源数据缺少字段解决问题:加载中间数据的字段。
DataStage技术介绍目录1.绪论 (2)1.1先进的开发和维护 (4)1.2完整的开发环境 (5)1.3企业级实施和管理 (9)1.4高扩展的体系架构 (12)2.附录B:DataStage企业版内嵌的扩展Stage (14)3.附录C:扩展连接 (19)1.绪论DataStage企业版是Ascential Software公司所有企业整合系列产品中关键产品。
企业版支持大容量数据的收集、整合和转换,数据从简单结构到很复杂的结构。
基于高可扩展性的软件架购,企业版使得企业能够通过高性能来解决大部分业务问题,并行处理大容量数据。
强大的企业元数据管理能力使得可以在数据整合生命周期中在所有工具中共享和使用工具。
DataStage企业版发布了四个核心功能来成功实施企业数据整合:先进的开发和维护;完整的开发环境;企业级实施和管理;高扩展的体系架构;端对端的企业级元数据管理。
1.1 先进的开发和维护DataStage企业版提供了全面的功能去最优化用户在建立、升级和管理数据整合架构时的速度、灵活性和效率。
DataStage企业版增强的功能减少了学习的周期、简单化了管理和优化了开发资源的使用,减少了数据整合应用的开发和维护周期。
结果,DataStage 企业版使得企业能够花更少的时间开发他们的整合应用,更多的时间是不断的从中受益。
DataStage企业版使用了Client-server架构,如下所示。
图一、DataState企业版Client-Server架构用户通过各个客户端工具访问DataStage企业版的开发、配置和维护功能。
这些工具包括:Designer:用来建立和编辑DataStage作业和表的定义。
Designer中的“Job Sequencer”控制作业的执行,其他作业成功完成(或失败,等)的条件。
Administrator:用来执行管理任务,如建立DataStage用户、建立和删除工程并且建立清洗标准。
资源角度设计DS开发规范主要从7.5版本进行描述一、JOB种类的选取目前能完成数据抽取转换加载功能的JOB有两类:一类是Parallel JOB;一类是Server JOB。
从单个JOB的数据抽取转换加载性能来看,前者要远高与后者,这也是这两类JOB 运行方式所决定的。
Parallel JOB会根据环境配置文件中的配置,在运行时发起多个进程运行;Server JOB单进程运行。
应该主要从ETL的业务及实现逻辑和数据量来考虑。
①数据量大;②实现逻辑复杂;③数据量小;④实现逻辑简单。
含有①、④的情况使用Parallel JOB;含有③、④的情况使用Server JOB;含有②的情况需要根据具体情况决定是使用Parallel JOB还是Server JOB。
由于使用Parallel JOB会根据配置文件决定运行时创建数据流的数量。
对于数据量大的JOB要求资源配置较高;对于数据量小的JOB需要资源少,如果对数据量小的JOB配置多并发的资源,会引起资源浪费,会产生负效应。
比如,一个JOB只有很少的数据,通过单进程在很短时间内就可以完成数据抽取转化加载,这个JOB默认的配置支持四个NODE的并发,那么JOB在执行时首先是创建四个并发进程,再做Partition,而创建并发进程和Partition是需要消耗资源和时间的,这时效率也不如单进程快。
因此,一台服务器需要准备多个配置文件模版,在开发时根据具体情况指定具体的配置文件。
这一做法还可以使JOB的运行维护变得更容易。
二、JOB大小的控制对于大小JOB的区分以三十个Stage为界限,小于30个的属于小JOB,大于30的属于大JOB。
大JOB要进行分割,不然很容易出错。
三、DW和DS负载均衡从数据仓库取数一般都需要做大量转换,从实现角度考虑,有两种办法:第一种是将这部分数据在数据仓库内部处理时就转换处理,DataStage做简单的抽取加载任务;第二种是将转换放到JOB中进行处理,从数据仓库中取数时只做简单的处理或不做处理。
1. DataStage(ETL工具)要求:5用户数2.技术要求ETL过程必须有图形化的开发、管理和监控界面;ETL处理过程支持各种字符集的转换;ETL处理过程具有完整的日志管理功能、完善的数据审计功能。
并且有相关的监控预警机制,保证ETL正常进行,不影响数据源系统和经营分析系统的正常工作;ETL处理过程可以定义外部数据记录的错误限制,如发现最多1000条错误数据记录时停止进行处理,同时将发生错误的数据记录加到相应的错误表中; 支持多种操作系统平台,如UNIX、Windows NT/2000/2003、Linux等;支持Oracle、DB2、Sybase、SQL Server等业界主流数据库软件平台;采用高性能的数据抽取接口,比如:专用数据库驱动接口、JDBC、ODBC接口等;数据转换模块可进行二次开发,并通过对内嵌脚本语言、存储过程、插件及外部程序的支持来处理复杂的处理,提供调试、跟踪功能;丰富的数据加载功能:可以利用关系型数据库引擎私有的装载功能(native load)进行数据装载;ETL工具必须支持一定的数据转换功能,支持ETL过程中数据转换环节执行顺序、支持的数据平滑化、规范化、聚类等转换操作;ETL工具必须提供自动文档生成功能;ETL工具作业开发支持过程驱动方法和自顶向下的设计,提供设计模板;ETL工具提供灵活的作业开发的参数支持;ETL处理过程必须包括有统一调度、监控和管理的功能。
具有元数据提取和存储的功能,通过元数据管理实现数据冲突分析、血统分析功能。
具有基于Web上的系统管理、作业调度和元数据展现。
ETL工具处理过程应能够支持并行(集群)处理,并能支持多服务器组成网格进行并行处理。
3. 实施要求3.1实施计划投标方需要在标书中提出项目实施计划的草案,内容包括:1)投标方必须给出切实可行的项目实施时间进度表。
2)所有可交付的开发成果、服务及交付时间和方式。
3)可交付的开发成果及服务之间的依赖关系。
DataStage 的基本逻辑处理单位是Job,每个Job由许多stage组成;由Stage 来完成;由Stage 来完成对数据的抽取,转换,加载等;Sequential File Stage: 适用于一般顺序文件,可识别文本文件。
Annotation : 功能特点一般用于注释,可利用其背景颜色在job中分颜色区分不同功能模块。
Change Capture Stage功能特点:Change Capture Stage 有两个输入Copy Stage: 功能说明: Copy Stage 可以有一个输入,多个输出。
它可以再输出是改变字段的顺序,但是不能改变字段类型。
当只有一个输入及一个输出时最好将Force 设置为True,这样可以在Designer里看到运行结束,否则将无法标识运行结束,但不会影响运行结果数据。
Filter Stage: 只有一个输入,可以有多个输出。
根据不同的筛选条件,可以将数据输出到不同的output link。
Funnel Stage : 将多个字段相同的数据文件合并为一个单独的文件输出合并策略说明Continuous Funnel : 从每一个input link中循环取一条记录Sort Funnel :按照Key 值排序合并输出Sequence : 先第一个input link 的输出数据,输出完毕后再输出第二个input link 的数据,以此类推,直到结束Tansformer Stage: 一个功能强大的Stage 。
有一个input link,多个output link ,可以将字段进行转换,也可以通过条件来指定数据输出到哪个output link。
在开发过程中可以通过拖拽。
Constraint 及Derivation 的区别Constraint 通过限定条件使符合条件的数据输出到这个output linkDerivation 通过定义表达式来转换字段值。
在Constraint 及Derivation中可以使用Job parameter 及Stage Variable。
图书分类号:密级:毕业设计(论文)题目:基于DataStage的大批量数据处理优化策略的设计与实现学生姓名班级学院名称专业名称指导教师学位论文原创性声明本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。
除文中已经注明引用或参考的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品或成果。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标注。
本人完全意识到本声明的法律结果由本人承担。
论文作者签名:日期:年月日学位论文版权协议书本人完全了解关于收集、保存、使用学位论文的规定,即:本校学生在学习期间所完成的学位论文的知识产权归所拥有。
有权保留并向国家有关部门或机构送交学位论文的纸本复印件和电子文档拷贝,允许论文被查阅和借阅。
可以公布学位论文的全部或部分内容,可以将本学位论文的全部或部分内容提交至各类数据库进行发布和检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
论文作者签名:导师签名:日期:年月日日期:年月日基于DataStage的大批量数据处理优化策略的设计与实现摘要新一代企业现金日终批量数据处理系统延续CCMP系统的构建模式,在日终进行数据的加载,以满足客户查询等操作的及时性要求。
本文围绕企业现金日终批量数据处理的整体流程,具体介绍了作者在数据组日终批量项目中的工作。
在日终批量数据处理的过程中,各类数据文件通过IBM InfoSphere DataStage软件进行读取、转换、载入到Oracle数据库中,并在数据库中对数据进一步的加工。
随着我行业务的发展,企业现金的日交易量超过了千万级,每日产生的数据量级也达到了千万级。
高效高质的进行数据处理譬如与上下游组件数据交互,日终数据备份等也成了制约现金管理数据处理和维护的瓶颈。
为了保证企业现金管理组件安全稳定的运行,需要对现有的数据策略进行优化,综合比较现有的大批量数据处理方案并结合企业现金组件现行的生产运行环境,选择datastage作为数据处理的优化点,充分利用现有工具的并发处理能力提高数据处理效率。
NEUSOFT Datastage开发经验
开发手册
刘石磊 2014/7/23 目录 第一章 Datastage连接配置 .................................................................................................. 3 1. 配置DS连接 ................................................................................................................. 3 2. 打开DS designer,选择服务层主机名,输入用户名密码,然后在项目中选择对应的开发项目,确定后进入DS开发界面 ............................................................................. 3
第二章 Datastage Designer开发 ........................................................................................ 4 1. 在Jobs目录下建立自己的开发目录层级 ................................................................... 4 2. job调用关系 ................................................................................................................. 4 3. job能调用的组件 ......................................................................................................... 5 4. 开发一个job ................................................................................................................. 6 5. 导入表定义(Table Definitions) .............................................................................. 17 6. 开发一个sequence ..................................................................................................... 20 a. 新建Sequence,将并行job拖入设计面板 .......................................................... 20 b. 保存编译后即可运行 .............................................................................................. 20 7. 运行job ....................................................................................................................... 21 8. 全局参数&环境变量设置 ........................................................................................... 23 9. 在job和sequence中调用参数 ................................................................................. 24 a. Job中变量参数设置 ............................................................................................... 24 b. Sequence中变量参数设置 ..................................................................................... 27 10. 调用存储过程 .......................................................................................................... 28 a. 新建一个job,作业属性配置如下图 .................................................................... 28 b. 调用存储过程,在查询存储过程运行状态的表的sql前—Before SQL,调用存储过程CALL ETL.SP_IPRO_ETL_ALL('#$p_etl_date#'); ....................................................... 28
11. 运行job失败时怎么办 ........................................................................................... 29 第三章 Datastage Director使用 ...................................................................................... 30 a. 只有处于已编译和已完成状态的job或sequence才能直接运行 ..................... 30 b. 查看报错日志 .......................................................................................................... 30 c. job日志过滤 ............................................................................................................ 31 d. 再次运行job ............................................................................................................ 32 第四章 Datastage Designer其它功能 .............................................................................. 33 1. Job搜索 ....................................................................................................................... 33 修订历史记录 日期 版本 作者 描述 审核人 2014/7/23 V1.0 刘石磊 DS开发的一点点经验
第一章 Datastage连接配置 1. 配置DS连接 DS服务器搭建好后,需要在客户端配置方可连接(DS服务器搭建没做过) 首先,在C:\Windows\System32\drivers\etc\hosts文件中加上服务器IP或计算机名和DS的项目名称。
2. 打开DS designer,选择服务层主机名,输入用户名密码,然后在项目中选择对应的开发项目,确定后进入DS开发界面 第二章 Datastage Designer开发 1. 在Jobs目录下建立自己的开发目录层级
2. job调用关系 最常用到的是并行作业和序列作业,并行作业为最小job单位,序列作业既可以包装和调用多个并行作业,也可以包装和调用多个序列作业。 3. job能调用的组件 在Stage Types 文件夹下,Parallel文件夹下的各组件并行作业可以调用,Sequence下的组件序列作业可以调用。
例如:新建一个并行作业,将Sequence的组件拖上去后,出现无法调用的图标,表示此组件在并行作业不可用。 如下图,可用的组件拖上去是这种图标 在进行开发时,使用组件选用板更方便,打开选用板方法:查看—选用板 选用板如下图,其实就是把Stage Types里面的内容以另一种形式展现出来 4. 开发一个job 例如:开发一个表对表的数据抽取,从s_orduna表中抽取数据,然后对抽取的数据进行过滤,满足条件company_code=’’的插入表s_orduna_full,不满足条件company_code=’’的插入s_orduna_error a. 新建并行作业,将选用板里面的注释组件拖进去,写上此job的功能,建议用英文注释
b. 将数据库组件拖进去,db2使用db2 connector
c. 将过滤组件拖进去 d. 各组件在没有连接时,一些属性是不会显示的,因此用处理箭头把他们连接起来,按住鼠标右键,从一个组件开始,到另一个组件时放开,就可以把组件连起来