- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
WORD格式 编辑整理
专业知识分享
ETL技术规范
ETL设计规范
ETL设计规范主要应用于ETL编码的前期工作。由于ETL全过程是面向数据的,主要工作为数据的抽取(Extract)、转换(Transform)、装载(Loading),正确界定所涉及到的数据范围和应当应用的转换逻辑对于后续的编码工作非常重要,这些数据关系的确定,我们称之为Mapping(数据映射)。
正确定义数据映射关系是ETL成功实施的前提,一个完善的Mapping应该包含以下几个部分:
源数据集属性
此部分应该详细描述数据源的相关属性,包括:
实体名称——含数据来源名称(DSN)、所有者等信息;
字段名称——英文名称;
字段简述——中文名称,如为参数信息应该有相关取值解释,如性别字段(1:男;2:女;0:不详)
类型——字段类型,含长度和精度信息;
非空属性——字段是否可以为空;
目标数据集属性
此部分应该详细描述目标数据集的相关属性,包括:
实体名称——含数据来源名称(DSN)、所有者等信息;
字段名称——英文名称,建议根据字段含义来命名,而不是简单用拼音来定义字段(此部分由负责设计数据集的人员控制);
字段简述——中文名称,对于保留字段应该给出默认值;
类型——字段类型,含长度和精度信息;
非空属性——字段是否可以为空;
ETL规则
主要描述ETL各个环节的转换规则,包括:
数据源过滤规则——描述从源数据集获取数据过程中过滤掉记录的规则;
关联规则——当源数据集为多个时,描述相互之间的关联关系;
列转换规则——描述源数据集到目标数据集的字段间的转换规则;此规则非常重要,要清晰描述字段间的逻辑关系,包括业务逻辑;
目标数据集更新规则——描述目标数据集的更新策略,包括更新机制和更新频度,如“每日全量更新”、“每周增量更新”等;
ETL作业列表——由于ETL所开发的作业之间包含一定的业务逻辑和编码逻辑,所以调度过程中应遵循一定的逻辑顺序,此部分主要用来明确调度的顺序,包括:
作业名称——实现Mapping的作业名称,包括该作业功能描述;
调度顺序——用序号或者是流程图模式描述作业的调度顺序,需要综合考虑业务逻辑、编码逻辑以及系统资源等多方面情况,在保证业务逻辑和编码逻辑的基础上,通过控制调度,最大限度地合理利用系统资源;
参数列表——列举每个作业中所使用的参数,不同作业中的相同参数最好使用相同的名称,便于调度时进行控制。
ETL开发规范
ETL项目的开发往往是多人团队开发模式,由于周期较长,期间难免会出现开发人员交替现象。无论是开发过程中的人员交替还是从开发到系统运营之间的转换,都需要良好的交接。为保证项目开发各个时期的平稳过度及顺利交接,在开发过程中,应该遵循一定的开发规范。主要包括:
命名规范
结构规范
代码封装规范
命名规范
作业命名规范
ETL是一个复杂的工作,数据仓库的建设一般会花费70%以上的工作量在ETL上面,而且这是一个细致活,任何一点小的错误都有可能造成后续工作的出错和失败;此外,数据仓库需要不断的更新维护,相应的ETL程序也需要进行相关的更新维护,所花费的成本也很大。
一个好的命名规范,能够使ETL的程序更清晰易懂,很好地避免了开发过程中出错;同时更好的可读性,也极大地减低了ETL程序的更新维护成本。作业命名规则:
[JOBTYPE][DESCRIPTION][SEQNUM]
JOBTYPE:作业类型
DESCRIPTION:有效的描述信息
SEQNUM:作业的编号。由于一定的原因,有可能需要拆分作业数据多次加载数据,这个编号就可以区分加载。如果一次加载可以成功的话这个编号就不需要了。
作业内部命名规范
对于作业内部命名,应该遵循代码的可读性与可传递性原则,命名规则:
[Function][Description]
Function:表示用途,Ex:抽取,Create:创建,Ld:装载,Lookup:查找等
Description:有意义的描述,比如数据库表名,文件名等。
作业注释规范
ETL开发过程往往要经历一个较长时间段,为了便于团队开发和后期维护,除开发设计文档要齐全外,还应该在作业设计界面中适当加注释信息,主要包括作业功能说明、所属模块、开发时间、开发人员等信息。
结构规范
作业目录组织结构
对于ETL PROJECT而言,我们需要划分清晰的目录结构,根据一定的规则将作业组织起来,这样无论是对ETL设计人员,运行人员,维护人员,都有很大的帮助。
目录结构划分遵循以下原则:
体现作业的依赖关系。
体现作业功能。
独立放置二次开发作业。
模块化
文档评论(0)