自下而上、自上而下

ods>>>dwd:自下而上,以业务过程为驱动
app>>>dwt>>>dws:自上而下,以需求为驱动


ods(operation data store 原始数据层)

  • 存储格式:LZOP
  • 作用:保存原始业务数据
  • ETL过程:
    • 按照各种算法(全量覆盖保存、全量分区保存(快照)、增量分区保存)抽取。
    • 直接加载原始数据。不做清洗转换与业务系统数据模型保持一致、按主题逻辑划分
  • 命名规则:详见【规范一文】

dwd(data warehouse detail 数据明细层)

  • 存储格式:parquet + LZOP
  • 作用:提供最小粒度数据
  • ETL过程:
    • 分主题解析json成多表
    • 维度表处理
    • 事实表处理
    • 清洗转换
      • 字段命名规范:字段的同名异义或异名同义
      • 维度转代理键 就是维度表必须有主键的意思
      • 维度退化
      • 隐私数据加密
      • 字段合并
      • 空值处理:0或其他填充
      • 脏数据超极限范围数据处理
      • IP清洗转换
      • 单位统一
      • 枚举值统一
  • 命名规则:详见【规范一文】

dws(data warehouse service 数据服务层)

  • 存储格式:parquet + LZOP
  • 作用:提供按天汇总数据
  • ETL过程:汇总处理
  • 命名规则:详见【规范一文

dwt(data warehouse topic 数据主题层)

  • 存储格式:parquet + LZOP
  • 作用:
    • 提供主题汇总数据,一行数据代表累计的行为
    • 进一步维度退化,尽可能多的维度group by
  • ETL过程:宽表处理
  • 命名规则:详见【规范一文】

app(application data store 数据展示层)

  • 存储格式:parquet + LZOP
  • 作用:报表展现
  • ETL过程:根据业务需求处理
  • 命名规则:详见【规范一文】

buffer

  • 作用:存储中间表,数据能删-表结构不能删
  • 命名规则:详见【规范一文】

tmp

  • 作用:存储临时表,数据和表结构都能删
  • 命名规则:详见【规范一文】

主题域

image.png

层次调用规范

  • 层次调用规范
  • 禁止反向调用
  • ODS 只能被 DWD 调用。
  • DWD 可以被 DWS 和 ADS 调用。
  • DWS 只能被 ADS 调用。
  • 数据应用可以调用 DWD、DWS、ADS,但建议优先考虑使用汇总度高的数据。
  • ODS->DWD->DWS>ADS
  • ODS->DWD->ADS