DataStage开发规范

  DataStage开发规范

1.1.    简介

本文档对采用DataStage工具开发ETL程序的命名及代码编写进行规范性描述。

1.2.    命名规范

ETL的类别说明

etltype

说明

I(大写字母i

增量数据加载程序(Incremental)

N

存量加载程序(iNitial)

 

Job的类别说明

jobtype

说明

Cv

变换程序(Convert)CIFjob

Tr

转换程序(Transform) LDFjob

Ld

加载程序(Load) LODjob

Pu

公用Job

SEQ

Sequence Job

 

系统名--简称列表

系统名

系统简称

核心系统

Core

..

IDS

Ids

 

Job目录结构

根目录

一级目录

描述

二级目录

描述

Jobs

系统简称

源系统名的简称

CIF

 

 

 

 

LDF

 

 

 

 

LOD

 

 

 

 

PUB

系统内部无公用Job可以不建

 

 

 

SEQ

 

 

PUB

Project的公用Job,例如SP1SP2SP3

 

 

 

TMP

临时Job

 

 

 

BACKUP

Job的备份

 

 

 

 

1.2.1              Job命名规范

²        CIF

ETL的类别说明_ Job的类别说明_系统简称_源表表名。系统名、源表表名要求首字母大写,其他字母小写, 如果表名存在下划线,下划线后的字母也要求首字母大写,其他字母小写。如果需要生成多个文件,在表名后直接加数字区别。例:I_Cv_Xtdm_DldI_Cv_Tveh_T_Reptcase1I_Cv_Tveh_T_Reptcase2

 

²        LDF

ETL的类别说明_ Job的类别说明_系统简称_目标表。系统名,目标表名(物理表名,不可以用逻辑表明)要求首字母大写,其他字母小写,如果表名存在下划线,下划线后的字母也要求首字母大写,其他字母小写;目标表名后可以加Step1的后缀,对于2步以上实现的Job,可以加Step3Step4……例:I_Tr_ Xtdm _T_LabI_Tr_Xtdm_Rp_Rl_Step1

 

²        LOD

ETL的类别说明_ Job的类别说明_系统简称_目标表名。系统名、目标表名(物理表名,不可以用逻辑表明)要求首字母大写,其他字母小写, 如果表名存在下划线,下划线后的字母也要求首字母大写,其他字母小写。例:I_Ld_Xtdm_Oper_RoleI_Ld_Tveh_Person

 

²        PUB公用Job

ETL的类别说明_ Job的类别说明_描述。描述部分可以是目标表名(物理表名,不可以用逻辑表明),SP名或一些其他功能性描述。描述要求首字母大写,其他字母小写, 如果表名存在下划线,下划线后的字母也要求首字母大写,其他字母小写。例: I_Pu_Sp_Etl_For_Inc1I_Pu_Partition_Config

对于系统内部自己调用的公用Job,命名使用:

ETL的类别说明_ Job的类别说明_系统简称_描述。系统名、描述要求首字母大写,其他字母小写, 如果表名存在下划线,下划线后的字母也要求首字母大写,其他字母小写。例:I_Pu_Ods_Get_Company_Id

 

²        SEQ队列job

SEQ_ETL的类别说明_系统简称_目标表名。系统名、目标表名(物理表名,不可以用逻辑表明)要求首字母大写,其他字母小写, 如果表名存在下划线,下划线后的字母也要求首字母大写,其他字母小写。例:SEQ_I_Ods_External_OrgSEQ_I_Ods_Cif

 

1.2.2              Stage命名规范

下表没有包括全部的Stage,如果需要用到不在表格范围内的Stage,先维护进本文档后在使用。下表中的数字部分取值范围可以是1~99,对于不足两位的数字前面补0;如果开发时遇到两位数字不够用的情况,需进一步商讨确定。

 

Stage

命名规范

Aggregator

AG_01

Copy

CP_01

Data Set

DS_文件名(不包括文件扩展名)

Filter

FT_01

Funnel

FN_01

Join

JN_01

Lookup

LP_01

Lookup File Set

LS_文件名

Oracle Enterprise

物理表名,字母全部大写

Remove Duplicates

RD_01

Sequential File

SF_文件名(不包括文件扩展名)

Surrogate Key Generator

SK_01

Transformer

TR_01

Column Generator

CG_01

Head

HD_01

Merge

MG_01

Modify

MF_01

Peek

PK_01

Pivot

PT_01

Row Generator

RG_01

Sort

ST_01

Switch

SW_01

Tail

TL_01

 

1.2.3              DSlink命名规范

DSlink的命名为LK01,数字部分取值范围可以是1~99,对于不足两位的数字前面补0;如果开发时遇到两位数字不够用的情况,需进一步商讨确定。

 

1.2.4              文件命名规范

目前DataStage开发过程中的落地文件可以分为两大类:

 

1、  Data Set文件:

²        CIF

系统简称_源表表名_Cif.ds。系统名、源表表名要求首字母大写,其他字母小写, 如果表名存在下划线,下划线后的字母也要求首字母大写,其他字母小写。例: Xtdm_Dld_Cif.ds Tveh_T_Reptcase_Cif.ds

 

²        LDF

系统简称_描述_Ldf.ds。由于LDFjob逻辑比较复杂,有很多地方涉及到业务整合,所以不能统一要求以源表名或目标表名来命名,因此,描述部分可以是源表名或目标表名(物理表名,不可以用逻辑表明)。系统名、描述要求首字母大写,其他字母小写, 如果表名存在下划线,下划线后的字母也要求首字母大写,其他字母小写。例:Tveh_T_Lab_Ldf.dsXtdm_Rp_Rl_Ldf.ds。对于TMP1表增量文件,在表名后加IncTveh_T_Lab_Inc_Ldf.ds。如果目标表有多个落地文件,在表名后加Tmp1Tmp2……例:Tveh_T_Lab_Tmp1_Ldf.ds。对于LDF层生成的LOD层文件,命名以LOD层规范为准。

 

²        LOD

系统简称_目标表名_Lod.ds。系统名、目标表名(物理表名,不可以用逻辑表明)要求首字母大写,其他字母小写, 如果表名存在下划线,下划线后的字母也要求首字母大写,其他字母小写。例: Xtdm_Oper_Role_Lod.ds Tveh_Person_Lod.ds。如果目标表有多个落地文件,在表名后加Tmp1Tmp2……例:Tveh_T_Lab_Tmp1_Lod.ds

 

2、  Sequential File文件

Sequential File文件一般为Rej文件,现在还没有使用,待以后补充。

 

1.2.5              参数命名规范

1、文件参数:参数名称全部大写,类型为String

ETLEXF

ETLCIF

ETLLDF

ETLLOD

ETLREJ

文件参数在使用是需注意,参数引用后写文件名,需要加“/”。例如,CIF层生成文件Xtdm_Dld_Cif.ds,在Data Set Stage中写为# ETLCIF# /Xtdm_Dld_Cif.ds,文件名和参数之间需要写“/”。

2、时间参数:参数名称全部大写,类型为Integer

WORKDATE

3、数据库参数:参数名称全部大写,类型为String

DBNAME

DBUSR

DBPWD

4、  表自增长ID:参数名称全部大写,类型为Integer

SEQ_物理表名_ID (一定不能写成SEQ_自增长ID字段名)

 

1.2.6              其他命名规范

1、  Transformer Stage中自定义的Stage变量、冗余列,要全部大写。

2、  Oracle Enterprise中的表名、User Defined SQL、自定义列名,要全部大写。

3、  Aggretator中聚合后产生的列:

聚合方式_原列名,要全部大写。

例如:对列FLF做求和,产生列应为,SUM_FLF

4、  Surrogate Key Generator产生列:

物理表名_ID,要全部大写。

 

 

 

 
  • 0
    点赞
  • 3
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

mgan

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值