数据仓库建设规范

版本编号 V1.0
发布日期 2017-07-19
作 者
发布范围 产研大数据团队

目 录
1 数据架构概述 2
1.1 原始数据层(ODS) 3
1.2 数据仓库层(DW) 3
1.3 数据集市层 (DM) 4
2 数据库命名规范 4
3 表命名规范 5
3.1 整体原则 5
3.2 原始数据层表命名规范 5
3.3 数据仓库层表命名规范 5
3.4 数据集市层 6
4 字段命名规范 7
4.1 整体原则 7

1 数据架构概述
数据仓库架构分三层:原始数据层(ODS)、数据仓库层(DW)、数据集市层(DM)。
数据仓库层分两层:明细数据层(DWD)、汇总数据层(DWS)。
数据架构示意图如下:

1.1 原始数据层(ODS)
ODS为Operational Data Store缩写。
直接从业务库同步的操作数据,以及埋点日志上报数据先整体入ODS层。即ODS层是整个数据仓库的数据来源。主要是满足未来大量不可预知需求,以及一些数据核对、数据回滚等服务。该层数据通常需要永久保留。
1.2 数据仓库层(DW)
在数据仓库层,整合企业范围数据,面向企业范围的各种管理应用提供数据服务。为了更好管理和组织数据,将数据仓库进一步细分为两层:明细数据层、汇总数据层。
 细节数据层(DWD)
DWD为Data Warehouse Detail缩写。
明细数据层按主题域存放从ODS经过清洗、转换加工得到的数据,数据粒度与ODS层一样,不经过任何汇总。
细节数据层的数据除了满足当前可见的数据服务之外,还要满足一定程度的未来不可预见的应用需求。

 -汇总数据层(DWS)
DWS为Data Warehouse Summary缩写。
汇总数据层是细节数据层到数据集市层的过渡层次。
汇总数据层是按照主题或者业务对明细数据层的数据进行汇总加工,以便更快、更方便地提供数据查询服务。
汇总数据层则面向分析型应用进行细粒度的统计和沉淀,并为可预见的多个应用提供数据。
 -历史汇总数据层(DWT)
DWS为Data Warehouse Total缩写。
历史汇总数据层是细节数据层到数据集市层的过渡层次更深层次的维度汇总。
历史汇总数据层是按照主题或者业务对明细数据层的所有历史数据进行维度汇总加工,以便更快、更方便地提供数据查询历史服务。
历史汇总数据层则面向分析型应用进行细粒度的统计和沉淀,并为可预见的多个应用提供数据。

1.3 数据集市层 (DM)
DM为 Data Mart的缩写。
数据集市层管理企业范围内的各种数据仓库应用,这些应用需要从数据仓库获取数据。数据集市层的应用有多种形式:数据挖掘、报表、指标、多维数据表等。
2 数据库命名规范
对数据架构各个分层的数据管理,需要建设相应的数据库。数据库名字字母要小写。
数据库建设规范如下:
 原始数据层建库名称为ods
 数据仓库层建三个库,分别为:

  1. 针对明细数据层(DWD),建立一个数据,该数据库命名为 dwd;
  2. 针对汇总数据层(DWS),建立一个数据库,该数据库命名为dws;
  3. 对于数据仓库层的各种实体数据,会涉及到维度数据管理,建立一个数据库,存放各种维度信息,数据库命名为dim 。
     数据集市层(DM)的数据库建设规范如下:
  4. 针对数据挖掘类应用,建设一个数据库, 该数据库命名为dmm ;
  5. 针对日常报表应用,建设一个数据库,该数据库命名为dmr,
  6. 后期可根据各业务结需求为每个业务线创建单独集市数据库,命名规范为dm+业务线名称首字母(如有首字母重复,可根据惯例酌情命名),例:校园:dmx,卓聘:dmh,RPO:dmo,测评:dmc,教育:dme。
     针对ETL过程需要建临时表,建立临时数据库tmp,所有临时表都放在此库,数据最多保留30天,超过30天的数据系统自动删除。
    3 表命名规范
    3.1 整体原则
    表名字要求采用小写,表名以库名为开头。
    3.2 原始数据层表命名规范
    源数据层(ODS)表命名规范:
    ods_{源系统英文缩写}{源数据库英文缩写}{源表名}{入库方式}{入库周期}
    其中:
  7. {源系统英文缩写}根据具体新同步数据系统名统一编写;
  8. {源数据库英文缩写}与源系统库名相同;
  9. {源表名}即源数据库的原始表名相同;
  10. {入库方式}一般有两种方式, 增量方式:inc,全量方式:all;
  11. {入库周期}即同步/入库的频率,按小时入库:hour,按天入库:day,按周入库:week,按月入库:mon。

3.3 数据仓库层表命名规范
 明细数据层(DWD)表命名规范:
dwd_{主题域英文名缩写}{源系统英文名缩写}{主体}_{后缀}
其中:

  1. {主题域英文名缩写}见附件“主题域划分”;
  2. {源系统英文名缩写}同ODS层源系统命名;
  3. {主体名}为表的数据含义说明,要求能够清楚地说明对象的含义;只能由字母、数字和"_"(下划线)构成,不能包含源数据库名;应采用能够准确反映其中文含义的英文单词或英文单词缩写构成,避免出现英文单词和汉语拼音混用的情况;
  4. {后缀}“hour”按小时分区增量数据,“¬_day”数据按天分区增量数据,“mon”按月分区增量数据,“all”表示按天全量表。
     汇总数据层(DWS)表命名规范:
    dws
    {主题域英文名缩写}
    {主题英文名缩写}
    {主体名}_{后缀}
    其中:
  5. {主题域英文名缩写}见附件“主题域划分”;
  6. {主题英文名缩写}见附件“主题域划分”;
  7. {主体名}为表的数据含义说明,要求能够清楚地说明对象的含义;
  8. {后缀}“_hour”按小时分区增量数据,“¬_day”数据按天分区增量数据,“_mon”按月分区增量数据, “_his”表示拉链表,“_all”表示全量表。

3.4 数据集市层
数据集市层(DM)表命名规范:
{数据库名}{主题英文名缩写}{主体名}_{后缀}
其中:

  1. {数据库名}为表所在的数据库名,如dmr库存放日常报表数据。
  2. {主题域英文名缩写}见附件“主题域划分”;
  3. {主题英文名缩写}见附件“主题域划分”;
  4. {主体名}为表的数据含义说明,要求能够清楚地说明对象的含义;
  5. {后缀}“_hour”按小时分区增量数据,“¬_day”数据按天分区增量数据,“_mon”按月分区增量数据, “_his”表示拉链表,“_all”表示全量表。

4 字段命名规范
4.1 整体原则
表的字段名字要求采用小写。
字段的中文名称和英文名称目前由附件“字段命名规范”词根数据字典表构成,随着数据仓库表和集市应用的增加,会不断对字段词根数据字典进行完善。如果发现词根数据字典不能满足建模需要,则需要通知模型团队进行增加。

你可能感兴趣的:(数据仓库建设规范)