数据仓库主题四--(表命名规范)

11 篇文章 13 订阅
10 篇文章 28 订阅

以下总结阿里关于数据仓库中表的命名规范。

一、命名规则综述

命名所用术语。
指标命名,尽量使用英文简写,其次是英文,指标英文名太长时,可考虑用汉语拼音首字母命名。如中国质造,zgzc 。以用来进行命名。(建议公司自己建立自己指标字典表来对指标进行规范和同意)
业务过程。
英文名:用英文或英文的缩写或者中文拼音简写或中文名:具体的业务过程中文即可,
例如:关于存量型指标对应的业务过程的约定,采用实体对象英文名+_stock 。(如在线会员数、 一星会员数等 ,其对应的业务过程为mbr_stock1 在线商品数、商品 SKU 种类小于 的商品数,其对应的业
务过程 itm_stock)。 如内容订阅关注 sns_follow
原子指标
英文名 :动作+度量:中文名:动作+度量。原子指标必须挂靠在某个业务过程下(待理解)如支付金额 pay_ord_amt
修饰词
只有时间周期才会有英文名,且长度为 位,加上“一”为3位,例如一ld 。其他修饰词无英文名。
例如时间周期修饰词:
在这里插入图片描述
派生指标
英文名原子指标英文名+时间周期修饰词( 位,例如_Id) +序号( 4位,例如一001 );中文名:时间周期修饰词+[其他修饰词]+原子指标。如支付转化率指数 :vst_pay_byr_rate_index_1d_002
(注意:阿里引入序号的目的是,为了控制派生指标的英文名称过长,在英文名的理解和规范上做了
取舍,所有修饰词的含义都纳入了序号中。序号是根据原子指标+派生指标自增的。自己的业务中可以对序号做取舍,做对应关系映射)
派生指标分类:事务型指标、存量型指标和复合型指标。按照其特性不同,有些必须新建原子指标,有些可以在其他类型原子指标的基础上增加修饰词形成派生指标。
1事务型指标: 是指对业务活动进行衡量的指标。例如新发商品数、重发商品数、新增注册会员数、订单支付金额,这类指标需维护原子指标及修饰词,在此基础上创建派生指标。
2、存量型指标:是指对实体对象(如商品、会员)某些状态的统计。例如商品总数、注册会员总数,这类指标需维护原子指标及修饰词,在此基础上创建派生指标,对应的时间周期 般为“历史截
至当前某个时间”。
3、复合型指标:是在事务型指标和存量型指标的基础上复合而成的。例如浏览 UV-下单买家数转化率 有些需要 建新原子指标,有些则可以在事务型或存量型原子指标的基础上增加修饰词得到派生指标。
(注意:其复合型指标下又包含很多小的分类例如:比率型、比例型、变化量型、变化率型、统计型、排名型等)

其他规则
1、上下层级派生指标同时存在时
如最近 天支付金额和最近 PC 端支付金额,建议使用前者,把PC 端作为维度属性存放在物理表中体现。
2、父子关系原子指标存在时
当父子关系原子指标存在时,派生指标使用子原子指标创建派生指标。如 PV IPV (商品详情页 PV ),当统计商品详情页 PV 时,优先选择子原子指标。

二、工作关于数仓命名规范实践

todo 总结
数据库表和字段命名规范:
1.表名应加上前缀,前缀为表所在的库名,统一小写 (例如 :dw_ ods_ dim_等)
2.表名和字段名具有意义且易于理解。尽量使用英文简写,其次是英文,指标英文名太长时,可考虑用汉语拼音首字母命名。多个单词之间,使用下划线”_”进行分割。例如(如商业广告后端明细数据表dw_log_server_action_biz_inc_1d)
3.涉及到一些实体的命名,如员工,利率等,使用单词的单数形式。
4.在采用英文单词表达某些中文时,如果存在多个单词都能表达其含义,请确保与现已使用单词保持一致。
5.建表时,必须要给表和字段写注释。
6.建议,所有表中布尔变量,采用相同的逻辑,比如都采用1和0,都采用true和false等。
7.建议,空字段,统一采用NULL表示

例子:
ods :源数据层 或日志简单清洗后 ods: (text\parquet\lzo)sqoop导入 记得lzo压缩。
物理表命命名:ods_数据类型(log、业务数据库类型(mysql、hbase、redis等)、接口等)类型(如果来源关系数据库和数据库表名保持一致)
数据仓库层:
dw(DWD): 日志:dw_log_业务
(明细/快照)_时间粒度 parquet
临时数据层(TMP):tmp_数据层类型(dw|dm)_业务 parquet \text
维度数据层(DIM):dim_维度类型(cate|city|channel|group) text \ lzo \ parquet
数据集市层(DM/DWS):dm_主题域(trade|search|recommend|biz|spam)_指标描述_时间粒度(**注意 DWD明细数据层和DWS汇总数据层,我们这统称为dw 层) parquet\text
**
用数据层(ADS): ads_报表描述_时间粒度 text 等。
元数据信息层(MDW ): mdw_业务_时间粒度 (主要用于其他数据库元数据收集和一些页面数据收集。为后续做监控和查询分析做支持)

可以参考:

注意 dw(dwd 和dws):存放着明细事实数据、维表数据及公共指标汇总数据,其中明细事实数据,维表数据一般通过ODS层数据加工生成;公共指标汇总数据一般根据维表数据和明细事实数据加工生成。

dw 层又细分为

在这里插入图片描述

  • 3
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
数据仓库模型命名规范是为了保持数据仓库中各个对象(如、列、视图等)的命名一致性和可读性而制定的一套规则。以下是一些常见的数据仓库模型命名规范: 1. 名: - 使用有意义的名词或名词短语来描述的内容。 - 使用下划线或驼峰命名法来分隔单词。 - 避免使用特殊字符或缩写,尽量使用完整的单词。 2. 列名: - 使用有意义的名词或名词短语来描述列的内容。 - 使用下划线或驼峰命名法来分隔单词。 - 避免使用特殊字符或缩写,尽量使用完整的单词。 3. 视图名: - 使用描述性的名词或名词短语来示视图的内容。 - 使用下划线或驼峰命名法来分隔单词。 - 避免使用特殊字符或缩写,尽量使用完整的单词。 4. 存储过程和函数名: - 使用动词+名词的形式来描述存储过程或函数的功能。 - 使用下划线或驼峰命名法来分隔单词。 - 避免使用特殊字符或缩写,尽量使用完整的单词。 5. 约束名: - 使用有意义的名词或名词短语来描述约束的类型和作用。 - 使用下划线或驼峰命名法来分隔单词。 - 避免使用特殊字符或缩写,尽量使用完整的单词。 6. 索引名: - 使用有意义的名词或名词短语来描述索引的内容。 - 使用下划线或驼峰命名法来分隔单词。 - 避免使用特殊字符或缩写,尽量使用完整的单词。 以上是一些常见的数据仓库模型命名规范,具体的规范可以根据实际情况和团队约定进行调整和补充。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值