本章节为您介绍如何设计数据模型。

前提条件

背景信息

设计数据模型并且物理化为ETL代码数据加工做准备。

新建模型

  1. 登录数据资源平台控制台
  2. 在页面左上角单击菜单按钮,选择研发工作台 > 资产加工 > 数据建模,进入数据建模页面。
  3. 单击左侧导航栏数据模型设计创建模型和目录。
    1. 创建数据模型:若当前工作组下无模型,请单击点击新建,填写名称和标识后,单击确认创建模型
      新建模型配置:
      名称 标识
      我的模型 wdmx
      说明 首次使用数据建模功能时需要创建数据模型。
    2. 创建目录:将鼠标悬浮至我的模型上,单击新建目录 > 新建目录,在新建目录页面,填写目录名称和标识,单击确认
      新建目录配置:
      名称 标识
      信息中心 xxzx

手动新建逻辑表

  1. 登录数据资源平台控制台
  2. 在页面左上角单击菜单按钮,选择研发工作台 > 资产加工 > 数据建模,进入数据建模页面。
  3. 单击创建的数据模型,将鼠标悬浮至创建的目录上后,单击DDL新建 > 新建逻辑表
    数据模型名称 目录
    我的模型 信息中心
  4. 新增逻辑表页面,填写表名称、描述、生命周期,单击引用现有表字段,选择为MaxCompute下的云计算资源,选择表名,勾选表的所有字段,单击确定,返回到新增逻辑表页面,单击确定
    新建逻辑表配置:
    表名称 所属目录 储存生命周期 逻辑表描述 引用现有表
    stg_base_yhkh_di 信息中心 365 银行客户信息 stg_base_yhkh_di
    stg_base_xykbkjl_di 信息中心 365 信用卡信息 stg_base_xykbkjl_di
  5. 单击目录名称,查看新建的逻辑表。查看目录下逻辑表

DDL语句新建逻辑表

  1. 登录数据资源平台控制台
  2. 在页面左上角单击菜单按钮,选择研发工作台 > 资产加工 > 数据建模,进入数据建模页面。
  3. 单击创建的数据模型,将鼠标悬浮至创建的目录上后,单击DDL新建 > DDL新建
    数据模型名称 目录
    我的模型 信息中心
  4. 通过DDL新建面板输入DDL语句,单击确定
    基础层模型-ODS:ods_base_xykbkjl_di(信用卡信息)
    create table if not exists `ods_base_xykbkjl_di` (
    `id` bigint comment '主键',
    `cid` string comment '卡id',
    `climit` bigint comment '卡额度',
    `actdate` string comment '统计日期',
    `channel` string comment '办卡渠道',
    `rid` string comment '持卡人id'
    )
     comment '信用卡信息'
    ;
    基础层模型-ODS:ods_base_yhkh_di(银行客户信息)
    create table if not exists `ods_base_yhkh_di` (
    `id` bigint comment '主键',
    `zzhm` string comment '证件号码',
    `khmc` string comment '客户名称',
    `nl` bigint comment '年龄',
    `xb` string comment '性别',
    `c_xb_dm` string comment '性别-标准字典值',
    `c_xb_mc` string comment '性别-标准值说明',
    `yddh1` string comment '移动电话1',
    `csrq` string comment '出生日期',
    `jysp` string comment '教育水平',
    `c_jysp_dm` string comment '教育水平-标准字典值',
    `c_jysp_mc` string comment '教育水平-标准值说明',
    `career` string comment '职业',
    `c_career_dm` string comment '职业-标准字典值',
    `c_career_mc` string comment '职业-标准值说明',
    `hyzk` string comment '婚姻状况',
    `c_hyzk_dm` string comment '婚姻状况-标准字典值',
    `c_hyzk_mc` string comment '婚姻状况-标准值说明',
    `gz` bigint comment '工资',
    `decdbyjyje` bigint comment '大额存单本月交易金额',
    `decdbyjybs` bigint comment '大额存单本月交易笔数',
    `zjzdjyrq` string comment '最近主动交易日期',
    `jtnsr` bigint comment '家庭年收入',
    `dqckcy` bigint comment '定期存款持有'
    )
     comment '银行客户信息'
    ;
    明细层模型-DWD:dwd_xykyw_bkjl_di(信用卡信息)
    create table if not exists `dwd_xykyw_bkjl_di` ( 
    `id` bigint comment '主键',
    `cid` string comment '卡id',
    `climit` bigint comment '卡额度',
    `actdate` string comment '统计日期',
    `channel` string comment '办卡渠道',
    `rid` string comment '持卡人id',
    `age` string comment '年龄',
    `gender` string comment '性别',
    `career` string comment '职业'
    )
     comment '信用卡办卡记录' 
    ;
    明细层模型-DWD:dwd_khzx_khxx_di(银行客户信息)
    create table if not exists `dwd_khzx_khxx_di` (
    `id` bigint comment '主键',
    `zzhm` string comment '证件号码',
    `khmc` string comment '客户名称',
    `nl` bigint comment '年龄',
    `xb` string comment '性别',
    `yddh1` string comment '移动电话1',
    `csrq` string comment '出生日期',
    `jysp` string comment '教育水平',
    `career` string comment '职业',
    `hyzk` string comment '婚姻状况',
    `gz` bigint comment '工资',
    `decdbyjyje` bigint comment '大额存单本月交易金额',
    `decdbyjybs` bigint comment '大额存单本月交易笔数',
    `zjzdjyrq` string comment '最近主动交易日期',
    `jtnsr` bigint comment '家庭年收入',
    `dqckcy` bigint comment '定期存款持有'
    )
    comment '银行客户信息'
    ;
    汇总层模型-DWS:dws_ren_kh_di(银行客户信息)
    create table if not exists `dws_ren_kh_di` (
    `id` bigint comment '主键',
    `zzhm` string comment '证件号码',
    `khmc` string comment '客户名称',
    `nl` bigint comment '年龄',
    `xb` string comment '性别',
    `yddh1` string comment '移动电话1',
    `csrq` string comment '出生日期',
    `jysp` string comment '教育水平',
    `career` string comment '职业',
    `hyzk` string comment '婚姻状况',
    `gz` bigint comment '工资',
    `decdbyjyje` bigint comment '大额存单本月交易金额',
    `decdbyjybs` bigint comment '大额存单本月交易笔数',
    `zjzdjyrq` string comment '最近主动交易日期',
    `jtnsr` bigint comment '家庭年收入',
    `dqckcy` bigint comment '定期存款持有'
    )
    comment '银行客户信息';
    汇总层模型-DWS:dws_wp_xyk_di(信用卡信息)
    create table if not exists `dws_wp_xyk_di` ( 
    `id` bigint comment '主键',
    `cid` string comment '卡',
    `climit` bigint comment '卡额度',
    `actdate` string comment '统计日期',
    `channel` string comment '办卡渠道',
    `rid` string comment '持卡人id',
    `age` string comment '年龄',
    `gender` string comment '性别',
    `career` string comment '职业'
    )
     comment '信用卡信息' 
    ;
  5. 单击目录名称,查看新建的逻辑表。

配置逻辑表质量规则

  1. 登录数据资源平台控制台
  2. 在页面左上角单击菜单按钮,选择研发工作台 > 资产加工 > 数据建模,进入数据建模页面。
  3. 进入创建的数据模型和创建的目录中,单击新建的”stg_base_yhkh_di"表。
    数据模型名称 目录
    我的模型 信息中心
  4. 逻辑表详情页面,单击页面右上角编辑图标,选择字段关联字段标准,所有操作完成之后单击确定
    新建逻辑表编辑配置:
    字段描述 关联字段标准
    移动电话1 数据元-手机号码
    年龄 数据元-年龄
    性别 数据元-性别
    婚姻状况 数据元-婚姻状况
    职业 数据元-职业
    教育水平 数据元-教育水平
  5. 单击页面质量规则,选择MaxCompute > 添加按钮,选择分区表达式后,单击确定
  6. 单击字段规则,单击启用按钮,启用所有字段规则。查看质量规则

物理化逻辑表

  1. 登录数据资源平台控制台
  2. 在页面左上角单击菜单按钮,选择研发工作台 > 资产加工 > 数据建模,进入数据建模页面。
  3. 单击左侧导航栏数据模型设计 > 模型管理,单击模型域后的查看模型,进入模型域页面。
  4. 单击创建的数据模型,将鼠标悬浮至创建的目录上后,单击DDL新建
    数据模型名称 目录
    我的模型 信息中心
  5. 勾选页面所有逻辑表,单击批量操作 > 物理化
  6. 弹出物理化页面,选择云计算资源类型和云计算资源,单击执行物理化,等待物理化结果执行成功。
  7. 在页面左上角单击菜单按钮,选择研发工作台 > 资产加工 > 数据探查,进入数据探查页面。
  8. 单击数据探查 > 物理表探查,进入物理表探查页面。
    1. 选中MaxCompute下的云计算资源,输入物理表表名。
    2. 单击物理表表名,查看物理表数据预览。表查看