首页 > 其他分享 >设计事实表的注意事项

设计事实表的注意事项

时间:2023-08-21 18:55:25浏览次数:30  
标签:规范 粒度 注意事项 维度 设计 事实 度量

事实表主要由两部分组成,一部分是主键和外键组成的键值部分,另一部分是用来描述业务过程的事实度量,也不排除部分设计人员把部分维度退化进去,从而使事实表再加一部分退化维度。在维度建模中事实表的设计一般遵循五大步骤:1.确定业务过程-》2.定义粒度-》3.确定维度-》4.确定事实-》5.冗余维度属性。通过这5个步骤,可以梳理出事实表设计的十大规范:

规范1:事实表要尽量包含选择的业务过程涉及的全部事实度量。

  分析业务过程包含哪些度量值,要分析全面,哪怕有一定冗余,由于是数值类型的,存储空间实际上也不大。

规范2:一个业务过程对应一个事实表,最好不要混合多个不相关的业务过程。

  比如电商中下单过程中就不能包含退款金额,退款金额是属于退款业务过程。

规范3:事实表要尽量原子性,方便扩展,尽量把不可加事实拆解为可加事实。

  比如可以把增长率拆分为增长额和总额度两个指标。

规范4:在选择维度和事实之前必须先声明粒度。

  粒度越细,灵活性越强,扩展性越强,粒度用于确定一行数据表示的细节层次,可理解为是业务流程中对度量的单位,也可理解为主键的确定,事实表的粒度要和维度表保持一致,如果事实表设计为月粒度,但是时间维表设计为周粒度,就会导致有些维度统计不了。

规范5:一个事实表只能有一个粒度,不能多个粒度混合。

  一个事实表只能有一个粒度,比如购买演唱票的系统,不能把订单金额和票价金额放到一个表上,一个是属于订单粒度,一个是票务粒度。

规范6:事实的单位要保持一致

  度量值的单位要保持一致,比如是元的就统一用元,是万的就统一用万。

规范7:对事实的 null 值要处理

  空值一定要处理,为null的建议置为0,否则进行sum时null和数值进行求和会变成null,导致数据不准。

规范8:适当使用退化维度提高事实表的易用性

  适当的退化维度到事实表,可以减少表关联个数,提升取数效率,但是这与事实表的设计理念不符,所以要慎用退化维度,只能说通过增加冗余存储,减少计算开销。

规范9:字段要保持功能的单一性

  比如确定为组织的字段就不能再往里面填员工信息,很多时候在输出给报表数据时,为了方便组织进行下钻,会设计一个当前层级字段,该字段既用于存储部门又用于存储员工,这样会导致字段功能不纯粹,不易理解。

规范10:统一保留的小数点位数

  统一度量值的小数位数,以免造成不同位数的精度损失。

 

标签:规范,粒度,注意事项,维度,设计,事实,度量
From: https://www.cnblogs.com/beststrive/p/17646799.html

相关文章

  • 直线模组的运行注意事项
    直线模组是属于高精密的传动元件,大家都知道,安装不当,直线模组就无法显示其高精度的优势,不仅如此,使用不当也会磨损直线模,针对直线模组的使用安全性事宜,我们切记严苛遵照有关的安全操作规程,这样才能充分发挥出直线模组的功效,尽量的降低常见故障的产生。在直线模组的运行中,还是有很多值......
  • 视频汇聚平台EasyCVR安防监控视频平台关于体育馆可视化的设计应用方案
    一、方案背景最近,成都大运会圆满结束,杭州亚运会即将开幕,大型体育赛事给人们带来了精神文化享受的同时,也由于人数众多、信息密集等原因,体育场馆发生的突发情况增多。因此,构建可视化安全防范系统成为体育场馆数字化建设的重要任务。二、建设目标及要求以预防和处置突发事件为核心,实......
  • 视频汇聚平台EasyCVR安防监控视频平台关于体育馆可视化的设计应用方案
    一、方案背景最近,成都大运会圆满结束,杭州亚运会即将开幕,大型体育赛事给人们带来了精神文化享受的同时,也由于人数众多、信息密集等原因,体育场馆发生的突发情况增多。因此,构建可视化安全防范系统成为体育场馆数字化建设的重要任务。  二、建设目标及要求......
  • (三河凡科科技飞讯教学版)学习开发振弦采集模块的注意事项
    学习开发振弦采集模块的注意事项(三河凡科科技飞讯教学版)振弦采集模快是一种用来实时采集和处理振弦信号的电子设备,在工业、航空、医疗等领域都有广泛应用。学习开发振弦采集模块需要注意以下几点:一、硬件选择首先需要选择适合自己开发的振弦采集模块硬件,这需要根据自己的应用场......
  • VR/AR眼镜方案,MTK联发科平台智能眼镜安卓主板设计方案
    随着人工智能在不同领域的逐渐深入,人们对一款产品的需求不再局限于某种单一的功能或单一场景,尤其是在工业医疗等专业领域,加快数字化转型才能实现产业的升级。AR智能眼镜,是一个可以让现场作业更智能的综合管控设备。采用移动互联网、大数据和云计算等技术,现场数据的采集与分析;同时实......
  • API接口的对接流程和注意事项
    API接口的对接流程和注意事项随着互联网技术的发展和数字化时代的到来,API接口已经成为应用程序之间进行数据交换和通信的重要方式。API即应用程序接口,是一种定义、调用和交互的规范,使得不同应用程序之间可以相互调用和共享资源。本文将从程序员的视角出发,详细介绍API接口的对接流......
  • 【Java设计模式005】代理模式
    概述大家好,个人gzh是大猪和小猪的小家,我们的gzh是朝阳三只大明白,满满全是干货,分享近期的学习知识以及个人总结(包括读研和IT),跪求一波关注,希望和大家一起努力、进步!!由于一些特定原因某些对象不适合或者不能直接引用目标对象,这时就可以使用代理模式。代理模式为目标对象提供一个代理以......
  • API接口的对接流程和注意事项
    ​API接口的对接流程和注意事项随着互联网技术的发展和数字化时代的到来,API接口已经成为应用程序之间进行数据交换和通信的重要方式。API即应用程序接口,是一种定义、调用和交互的规范,使得不同应用程序之间可以相互调用和共享资源。本文将从程序员的视角出发,详细介绍API接口的对......
  • 机房收费管理系统-计算机毕业设计源码+LW文档
    【摘要】作为计算机机房管理的必要组成部分,计算机机房管理系统有助于机房资源的合理分配、统一管理和设备利用率的提高,从而有力地保证了机房的管理质量。现代化、信息化和自动化是计算机机房的发展方向,它们旨在实现无人或少人值守的开放式管理,并减轻管理员的压力。通过自动计费和合......
  • App内拉起小程序的设计方案
    热更新是指软件不通过运营商店的软件版本更新审核,直接通过应用自行下载的软件数据更新的行为。单来说,就是在用户下载安装APP之后,打开App时遇到的即时更新。热更新是一种各大手游等众多App常用的更新方式。热更新的工作原理就是动态下发代码,它可以使开发者在不发布新版本的情况......