
主要从业务、技术、产品三个视角来看,目前存在和可能引起的问题:
业务视角 业务分析场景指标、维度不明确; 频繁的需求变更和反复迭代,数据报表臃肿,数据参差不齐; 用户分析具体业务问题找数据、核对确认数据成本较高。
技术视角 指标定义,指标命名混乱,指标不唯一,指标维护口径不一致; 指标生产,重复建设;数据汇算成本较高; 指标消费,数据出口不统一,重复输出,输出口径不一致;
产品视角 缺乏系统产品化支持从生产到消费数据流没有系统产品层面打通;
技术目标 统一指标和维度管理,指标命名、计算口径、统计来源唯一, 维度定义规范、维度值一致
业务目标 统一数据出口、场景化覆盖
产品目标 指标体系管理工具产品化落地;指标体系内容产品化落地支持决策、分析、运营例如决策北极星、智能运营分析产品等
从业务架构设计到模型设计,从数据研发到数据服务,做到数据可管理、可追溯、可规避重复建设。
数据指标模型架构
2.1 业务线业务板块定义原则:业务逻辑层面进行抽象、物理组织架构层面进行细分,可根据实际业务情况进行层级分拆细化,层级分级建议进行最多进行三级分拆,一级细分可公司层面统一规范确定,二级及后续拆分可根据业务线实际业务进行拆分。
规范定义以维度建模作为理论基础,构建总线矩阵,定义业务域、数据域、业务过程、度量/原子指标、维度、维度属性、修饰词、修饰类型、时间周期、派生指标等。
业务域:比数据域更高维度的业务划分方法,适用于特别庞大的业务系统,且业务板块之间的指标或业务重叠性较小。
例如动漫业务线包括漫画、潮玩等。漫画继续下拆为内容、用户、日志、营销、风控、push、搜索、推荐、互动、会员、消费。
业务过程:业务过程可以概括为一个个不可拆分的行为事件,如曝光、点击、浏览等业务过程/事件。与埋点的事件类似。
数据域:联系较为紧密的数据主题的集合,是对业务对象高度概括的概念层归类,目的是便于数据管理与应用。简而言之,数据域就类似于我们电脑桌面要建立不同的文件夹来存储数据,这些个文件夹名就是数据域。
维度:度量的环境,用来反映业务的一类属性,这类属性的集合构成一个维度,可以从who-where-when-what层面来看。维度属于一个数据域,如地理维度(其中包括国家、地区、省市等)、时间维度(其中包括年、季、月、周、日等级别内容)。
维度属性:维度属性隶属于维度,相当于维度的具体说明,如用户维度中性别为男、女,地理维度里面的国家名称、国家ID、省份名称等都属于维度属性。
修饰词:统计维度以外指标的业务场景限定抽象,修饰词属于一种修饰类型,如在日志域的访问终端类型下,有修饰词APP、PC端等。
修饰类型:对修饰词的一种抽象划分。修饰类型从属于某个业务域,如日志域的访问终端类型涵盖APP端、PC端等修饰词。
指标类型:包含原子指标、派生指标、复合指标。
原子指标:基于某一业务事件行为下的度量,是业务定义中不可再拆分的指标,具有明确业务含义的名称,如呼单量、交易金额 派生指标:时间周期+多个修饰词(可选)+1个原子指标,是原子指标业务统计范围的圈定。
派生指标
派生指标又分以下二种类型: 事务型指标:是指对业务过程进行衡量的指标。例如,阅读量、订单支付金额,这类指标需要维护原子指标以及修饰词,在此基础上创建派生指标。 存量型指标:是指对实体对象(如用户、作品)某些状态的统计,例如注册用户总数、作品总数,这类指标需要维护原子指标以及修饰词,在此基础上创建派生指标,对应的时间周期一般为“历史截止当前某个时间”。
复合指标:建立在原子指标、派生指标之上,通过一定运算规则形成的计算指标集合,如CTR,次均浏览时长等。
度量/原子指标:原子指标和度量含义相同,某一业务行为事件下的度量,是业务定义中不可拆分的指标,如推荐量、搜索次数。
时间周期:用来明确数据统计的时间范围或是时间点,如最近7天、自然月、截至当日等。
2.2 数据仓库模型设计 2.2.1 模型层次 2.2.2 层级功能及表命名ods层:集合数据源的原始数据
数据表名:odm_{业务线}{数据源}{库名}{表名}{增量(incr)/全量(full)}_{更新时间频次}
例:
1)mysql:odm_{业务线}mysql{db_name}_{mysql_table_name}_incr_day
2)hbase:odm_{业务线}hbase{db_name}_{hbase_table_name}_incr_day
3)kafka:odm_{业务线}kafka{cluster_name}_{topic_name}_incr_day
dwd层:进行清洗并去除了脏数据的原始数据
数据表名:dwd_{业务域}{一级主题}{二级主题}{业务过程概要}{增量(incr)/全量(full)}_{更新时间频次}
dwb层:根据属性维度进行汇总做成宽表
数据表名:dwb_{业务域}{一级主题}{二级主题}{业务过程概要}{增量(incr)/全量(full)}_{更新时间频次}
dws层:轻度汇总记录
数据表名:dws_{业务域}{主题}{实体}{增量(incr)/全量(full)}{更新时间频次}
ads层:面向指定业务的可供分析的指标
数据表名:ads_{业务域}{功能域}{统计描述}_{更新时间频次}
2.2.3 事实表、维度表所有的业务都分两种表:事实表、维度表。每一层里面都分成这两种表。
事实表:用户的所有操作行为,每一个动作对应一条记录,用来存储事实的度量及指向各个维度的外键值
维度表:根据进行数据分析的角度建立的表,用于保存元数据。
参考:
网易传媒数据指标体系建设实践
滴滴数据仓库指标体系建设实践