暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

数据开发规范(可以看看)

数据研发工程师 2021-08-25
1123

俗话说,无规矩不成方圆,在数据开发领域同样也是适用的。


是不是经常听到这样的抱怨:


  • 我擦,这张表怎么特么的注释都没有?

  • 我日,这个字段命名怎么是拼音全称?

  • 怎么这张表的订单id是string类型,那张表的是订单id是bigint类型?

  • 这是谁开发的任务,库名/项目名都没写,我这去其他项目下跑还得一个个加上。

  • 这代码谁写的?2张表join获取相关字段,也不写一下表的别名,我哪知道这是这是取自哪张表的 ?还要老子一个个去查?

  • 运维任务又报错了?这是谁写的select * ,union all呀,害死人,上游表加字段了,这搞的,sql boy连sql都写不好吗?



一 词根


词根的作用就是大家在对字段,表,指标等命名的时候作为查询使用,需要陆续完善


中文名

英文

评审时间

负责人

数量

cnt

20210816

数据研发工程师






二 词典


词典比词根更近一步,大家在对字段命名的时候,首先可以参考词典,以及可以参考其字段类型,使各个开发对同一个中文的字段命名及类型全部一致,需要陆续完善。


中文名

英文名

字段类型

评审时间

负责人

订单id

order_id

String

20210816

数据研发工程师








三 命名规范




表命名


ods层

dwd层

dim层

dws层

ads层

临时表

手工表


表命名一般需要加入一及数据域,二级数据域,所以最开始需要划分数据域/主题域

然后详细的命名方式,根据每家公司有所不同


任务命名

一般情况下,任务名与输出表名一致



字段命名

参考 词根,词典



指标命名


略,之后讲指标平台的时候详细讲


四 ddl规范


需不需要加生命周期

需不需要加创建人,创建时间

ddl语句需不需要单独维护


五 sql编写规范


关于缩进,大小写,空格,注释啥的细节就不说了,讲一下重点


多表关联时,需要使用别名来引用列 如:t1.user_id

表名前面需要加上库名/项目名,如 ods.test

不要出现select * 操作


点个关注,防止迷路

文章转载自数据研发工程师,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论