数栈-数据开发规范

个人博客原文链接

术语解释

  • ODS(Operational Data Store):操作型数据,即源数据,指结构与源系统基本保持一致的增量或全量数据。作为DW数据的一个数据准备区,同时又承担基础数据记录历史变化。
  • CDM(Common Data Model):通用数据模型(数据中间层),包含DWD和DWS。
  • DWD(Data Warehouse Detail):数据仓库明细层数据。
  • DWS(Data Warehouse Summary):数据仓库汇总层数据。
  • ADS(Application Data Service):面向应用的数据服务层。
  • 冒烟测试:文本中指代码运行能否正常结束,属于功能性测试。

数据处理流程

1.离线数据处理流程
如图所示,离线数据公共层模型层次分为4个层次,其中DWD、DWS属于中间层(CDM)。
数栈-离线数据处理流程

2.实时数据处理流程
如图所示,实时数据公共层模型层次分为3个层次,其中DWD、DWS属于中间层(CDM),其中DWD落地供后续应用(ADS)订阅使用,DWS为各数据域的中间汇总层。
数栈-实时数据处理流程

项目管理

1.项目命名
ODS层项目以ods为后缀,如mtods。
中间层项目以cdm为后缀,如mtcdm。
应用层项目分两类:
第一类,数据报表、数据分析等应用以bi为后缀,如mtbi。
第二类,数据产品等应用以app为后缀,如magicapp等。

数据报表:报表就是用表格、图表等格式来动态显示数据,可以用公式表示为:“报表 = 多样的格式 + 动态的数据”。
数据分析:数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。

2.项目空间目录结构
a.工作流
应初始化2层目录(根目录算第0层)结构,第一层目录表示数据域(对于中间层项目)或业务线(对于应用层项目),如渠道、消费者、商品、交易、仓储物流、服务、营销、社交、日志,第二层目录表示层次,如DWD、DWS、DIM以及数据同步任务。
另外,建议增加三个一级目录为RESOURCE、TEMP和VIRTUAL NODE,其中RESOURCE目录主要放置资源文件,按照节点类型再进行细分,如UDF、JAR、SHELL等,TEMP目录按照开发人员姓名再进行细分,VIRTUAL NODE放置虚拟节点。如果虚拟节点或者UDF、JAR、SHELL 只是作用于某个表时,这些虚拟节点、资源请放在表级目录下,如果是公用的请放在RESOURE、TEMP和VIRTUAL NODE相应的目录下。
一般是:根目录(工作流)—>数据域(交易)—>数据层次(DWD)—>表名称(dwd_mt_ord_evt_di)
b.临时查询
临时查询TAB页建议以开发人员姓名作为文件夹进行管理,以避免临时查询文件列表过多。

3.工作流节点类型及命名

数栈-工作流节点类型及命名

4.工作流起始节点
每个Project必须设立一个起始节点,命名为vt_{project_name}_start,表示该project的任务起点。

5.资源文件
项目中公用的资源文件建议放在RESOURCE目录中,资源名称需有后缀表示资源类型,如.java、.py、.sh等。如果某个资源文件如java只是服务于某个表,请把这个资源文件放在表级目录下。

表与视图

1.表的命名
DWD表与视图命名规范:
dwd_{业务BU缩写/pub}_{数据域缩写}_{业务过程缩写}[_{自定义表命名标签缩写}]_{刷新周期标识}_{单分区增量全量标识}
例如:dwd_mt_ord_evt_di

DWS表与视图命名规范:
dws_{业务BU缩写/pub}_{数据域缩写}_{数据粒度缩写}[_{自定义表命名标签缩写}]_{统计时间周期范围缩写}[_刷新周期标识][_单分区增量全量标识]
关于统计实际周期范围缩写,缺省情况下,离线计算应该包括最近一天(_1d),最近N天(_nd)和历史截至当天(_td)三个表,如果出现_nd的表字段过多,需要拆分之时,只允许以一个统计周期单元作为原子拆分,也就是说一个统计周期拆分一个表&

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值