《全链路数据治理-智能数据建模 》——大白话数据建模(1) https://developer.aliyun.com/article/1231151?groupCode=tech_library
3. 维度表
小明同学购买的商品,同时还有容量,类目等描述词,这部分描述词称之为维度属性,但是它们并不会全部出现在事实表里,而是单独存放。由维度主键和维度属性构成的表格,被称为维度表。
维度表通常有多列或者说多个属性。实际应用中,包含几十甚至上百属性的维度表并不少见。维度表应该尽可能多地包括一些有意义的文字性描述,以方便下游用户使用。
4. 指标规范
现在我们已经有了描述便利店的商品和客户数据,还有了客户交易事实表。你很幸运地得到了一份数据分析师的工作,需要你来分析这家便利店的销售业绩。
销售业绩需要通过指标来量化,所以你组织大家开了一次讨论会,收集大家的需求并梳理指标。大家纷纷发言:
• 店长:我希望看到老买家和新买家的日均支付金额,希望看到近一天的,近一周的,近一个月的。
• 店员1:我希望看到新品上架后的销售情况,也希望看到近一天的,近一周的,近一个月的。
• 店员2:我希望看到主营类目的日均支付金额,看近一周的数据就行,还希望看到新老买家分别的数据。
• ……
你将大家的需求进行分析,会发现几个现象:
• 需求口语化:比如店员1 提到的销售情况,这个是含糊的词语,无法转化成开发需求。
• 需求糅合:比如店员2 虽然只说了一句话,但是实际上包含3 个指标,近一周的,新买家的,老买家的。
• 口径不一致:会上大家都提到了新买家和老买家,但是没有人针对新/老买家给出完整的解释,因此你还需要再去询问一次,让大家理解并保持一致。
将这个案例放大到整个公司,为了让指标能够规范化描述与开发,避免不同团队产生歧义,需要引入指标体系来解决此类问题。
再回到上面这个案例,你梳理出了所有指标和口径,如下所示:
通过表格可以发现,不同指标存在很多重复的地方,例如最近1 天、最近7 天;新买家、老买家;日均支付金额、订单数;如果针对每一个指标都需要进行完整的解释,可想而知重复的工作量有多少。
因此,聪明的你决定对指标进行拆解。
你将指标拆解为原子指标、时间周期、修饰词三大类,并将现在梳理出来的指标命名为派生指标。于是就得到了如下的公式:
• 原子指标:原子指标是不可再细分的度量,如支付金额,日均支付金额,支付订单数。
• 时间周期:用来明确数据统计的时间范围或者时间点,如最近1 天,最近7 天。
• 修饰词:对指标统计业务范围的划定,业务活动上下文的描述,如新买家,老买
家。
通过指标分类,你发现现在指标更好复用和组合。原先你需要针对每一行指标给出
描述,如今你只需要针对每一类词分别描述,随后自由组合。可谓是事半功倍。
《全链路数据治理-智能数据建模 》——大白话数据建模(3) https://developer.aliyun.com/article/1231147?groupCode=tech_library