【阿里巴巴大数据实践之路学习记录】第九章-数据整合及管理体系

发布于:2025-07-26 ⋅ 阅读:(19) ⋅ 点赞:(0)

概述及规范定义

体系架构

体系架构

名词术语

名词术语 解释
数据域 指面向业务分析,将业务过程或者维度进行抽象的集合。其中,业务过程可以概括为一个个不可拆分的行为事件,在业务过程之下,可以定义指标;维度是指度量的环境,如买家下单事件,买家是维度。在划分数据域时,既能涵盖当前所有的业务需求,又能在新业务进入时无影响地被包含进已有的数据域中和扩展新的数据域。所以,对于一份供应链来说,主题域可以分为商品、交易、商家、物流、仓储等。
业务过程 指企业的业务活动事件,如下单、支付、退款都是业务过程。业务过程是一个不可拆分的行为事件。
时间周期 用来明确数据统计的时间范围或时间点,如自然周、截至当日。
修饰类型 是对修饰词的一种抽象划分。修饰类型从属于某个业务域,如日志域的「访问终端类型」涵盖「无线端」、「pc端」等修饰词。
修饰词 指除了统计维度以外指标等业务场景限定抽象。修饰词隶属于一种修饰类型。
度量/原子指标 原子指标和度量含义相同,基于某一业务事件行为下的度量,是业务定义中不可再拆分的指标,具有明确业务含义的名词,如支付金额。
维度 维度是度量的环境,用来反映业务的一类属性,这类属性的集合构成一个维度,也可以称为实体对象。维度属于一个数据域,如地理维度、时间维度。
维度属性 维度属性隶属于一个维度,如地理维度里面的国家名称、国家ID、省份名称等都属于维度属性。
派生指标 派生指标=一个原子指标+多个修饰词(可选)+时间周期。可以理解为对原子指标业务统计范围对圈定。举例:「最近一天」(时间周期)「海外」(修饰词)「买家」(维度)「支付金额」(原子指标)

指标体系

  1. 组成体系之间的关系:原子指标+「时间周期修饰词+其他修饰词」(修饰类型)=派生指标。
    派生指标唯一归属一个原子指标,继承原子指标的数据域,与修饰词的数据域无关。
    原子指标有确定的英文字段名、数据类型和算法说明;派生指标要继承原子指标的英文名、数据类型和算法要求。
  2. 命名约定
    业务过程:尽量用英文或英文的缩写或中文拼音简写。
    存量型指标对应的业务过程:英文名+_stock。
    原子指标:动作+度量。原子指标必须挂靠在某个业务过程下。
    修饰词:只有时间周期才会有英文名,且长度为2位,如1d,其他修饰词无英文名。
    派生指标:原子指标英文名+时间周期修饰词+序号(将所有修饰词的含义纳入序号中,不固定,当派生指标不多且修饰词不长时,可以直接用修饰词英文名)。
  3. 算法
    原子指标、修饰词、派生指标的算法说明必须让各种使用人员看得明白,包括:算法概述、举例、sql算法说明。(这也太复杂了吧,应该都写在模型设计里面嘛)
  4. 派生指标可以分为三类:事务型指标、存量型指标和复合型指标。按照其特性不同,有些必须新建原子指标,有些可以在其他类型的原子指标的基础上增加修饰词形成派生指标。
    • 事务型指标:是指对业务活动进行衡量的指标。如新发商品数,这类指标需维护原子指标及修饰词,在此基础上创建派生指标。
    • 存量型指标:是指对实体对象(如商品、会员)某些状态的统计。
    • 复合型指标:在事务型指标和存量型指标的基础上复合而成的。如:浏览uv-下单买家转化率。
    • 复合型指标包括:比率(ctr)、比例(占比)、变化量、变化率、统计型、排名型、对象集合型(以k-v对的方式存储在一个字段中,方便前端展示)。

模型设计

数据模型的维度设计主要以维度建模理论为基础,基于维度数据模型总线架构,构建一致性的维度和事实。

模型层次

将表数据模型分为三层:操作数据层(ods)、公共维度模型层(cdm)和应用数据层(ads),其中公共维度模型层包括明细数据层(dwd)和汇总数据层(dws)。

  1. 操作数据层:把操作系统数据几乎无处理地存放在数据仓库系统中。包括数据同步(结构化数据增量或全量同步到MaxCompute)、结构化(非结构化日志结构化处理并存储到MaxCompute)、累积历史与清洗(根据数据业务需求及稽核和审计要求保存历史数据、清洗数据)。
  2. 公共维度模型层:存放明细事实数据、维表数据及公共指标汇总数据,其中明细事实数据、维表数据一般根据ods层数据加工生成:公共指标汇总数据一般根据维表数据和明细事实数据加工生成。
    该层又细分为dwd和dws层:
    • 采用维度模型方法作为理论基础,更多地采用一些维度退化手法,将维度退化至事实表中,减少事实表和维表的关联,提高明细数据表的易用性;
    • 同时在汇总数据层,加强指标的维度退化,采取更多的宽表化手段构建公共指标数据层,提升公共指标的复用性,减少重复加工。
  3. 应用数据层:存放数据产品个性化的统计指标,根据cdm层与ods层加工而成。
    • 基于个性化指标加工:不公用性、复杂性
    • 基于应用的数据组装:大宽表集市、横表转纵表、趋势指标串
      数据架构图
      数据调用服务优先使用公共维度模型层(cdm)的数据,当公共层没有数据时,需评估是否需要创建公共层数据,当不需要建设公用的公共层时,方可直接使用操作数据层(ods)数据。

基本原则

  1. 高内聚和低耦合
    一个逻辑或者物理模型由哪些记录和字段组成,应该遵循最基本的软件设计方法论的高内聚和低耦合原则。主要从数据业务特性和访问特性两个角度来考虑:将业务相近或者相关、粒度相同的数据设计为一个逻辑或物理模型;将高概率同时访问的数据放在一起,将低概率同时访问的数据分开存储。
  2. 核心模型与扩展模型分离
    建立核心模型与扩展模型体系,核心模型包括的字段支持常用的核心业务,扩展模型包括的字段支持个性化或少量应用的需要,不能让扩展模型的字段过度侵入核心模型,以免披怀核心模型的架构简介性与可维护性。
  3. 公共处理逻辑下沉及单一
    越是底层公用的处理逻辑越应该在数据调度依赖的底层进行封装与实现,不要让公用的处理逻辑暴露给应用层实现,不要让公共逻辑多处同时存在。
  4. 成本与性能平衡
    适当的数据冗余可换取查询和刷新性能,不宜过度冗余与数据复制。
  5. 数据可回滚
    处理逻辑不变,在不同时间多次运行数据结果确定不变。
  6. 一致性
    具有相同含义的字段在不同表中的命名必须相同,必须使用规范定义中的名称。
  7. 命名清晰、可理解

模型实施

  1. kimball模型主要探讨需求分析、高层模型、详细模型和模型审查整个过程。构建维度模型一般要经历四个阶段:
    • 高层模型:高层模型设计阶段的直接产出目标是创建高层维度模型图,它是对业务过程中维表和事实表的图形描述。确定维表创建初始属性列表,为每个事实表创建提议度量。
    • 详细模型:为高层模型填补缺失的信息,解决设计问题,并不断测试模型能否满足业务需求,确保模型的完备性。确定每个维表的属性和每个事实表的度量,并确定信息来源的位置、定义,确定属性和度量如何填入模型的初步业务规则。
    • 模型审查、再设计和验证:召集相关人员进行模型的审查和验证,根据审查结果对详细维度进行再设计。
    • 提交ETL设计和开发
  2. Inmon模型实施过程
    Inmon对数据模型的定位是:扮演着通往数据仓库其他部分的智能路线图的角色。由于数据仓库的建设不是一蹦而就的,为了协调不同人员的工作以及适应不同类型的用户,非常有必要建立一个路线图——数据模型,描述数据仓库各部分是如何结合在一起的。Inmon将模型分为三个层次,分别是ERD(Entity Relationship Diagram,实体关系图)层、DIS(Data Item Set,数据项集)层和物理层(Physical Model,物理模型)。
    • ERD层是数据模型的最高层,该层描述了公司业务中的实体或主题域以及它们之间的关系;ERD层是中间层,该层描述了数据模型中的关键字、属性以及细节数据之间的关系;物理层是数据建模的最底层,该层描述了数据模型的物理特性。
    • ERD模型是高度抽象的数据模型,描述了企业完整的数据。而每次迭代则是完成ERD模型的子集,通过DIS和物理数据模型实现。
  3. OneData实施过程(学习建模过程)
    在建设大数据数据仓库时,要进行充分的业务调研和需求分析,这是数据仓库建设的基石。其次,进行数据总体架构设计,主要是根据数据域对数据进行划分;按照维度建模理论,构建总线矩阵、抽象出业务过程和维度。再次,对报表需求进行抽象整理出相关指标体系。最后,代码研发和运维。
    实施工作流
    (1)数据调研:包括业务调研和需求调研。需求调研有两种方式,一种是根据与分析师、业务运营人员沟通获知需求;一种是对报表系统中现有的报表进行研究分析。
    (2)架构设计:
    • 数据域划分。数据域是指面向业务分析或者维度进行抽象的集合。业务过程可以概括为一个个不可拆分的行为事件,如下单、支付、退款。为保障整个体系的生命力,数据域需要抽象提炼,并且长期维护和更新,但不轻易变动。在划分数据域时,既能涵盖当前所有业务需求,又能在新业务进入时毫无影响地被包含进已有的数据域中或者扩展新的数据域。
    • 构造总线矩阵。明确每个数据域下有哪些业务过程;业务过程与哪些维度相关,定义每个数据域下的业务过程和维度。
数据域 业务过程举例
会员和店铺域 注册、登录、装修、开店、关店等
商品域 发布、上架、下架、重发、SKU存量等
日志域 曝光、浏览、点击等
交易域 加购、下单、支付、退款、确认收货等
业务过程 供应商 业务类型 地区 仓库 类目 采购单 发货单 入库单
采购
发货
入库

(3)规范定义:规范定义主要定义指标体系,包括原子指标、修饰词、时间周期和派生指标。
(4)模型设计:模型设计主要包括维度及属性的规范定义,维表、明细事实表和汇总事实表的模型设计。


网站公告

今日签到

点亮在社区的每一天
去签到