城市直播房产教育博客汽车
投稿投诉
汽车报价
买车新车
博客专栏
专题精品
教育留学
高考读书
房产家居
彩票视频
直播黑猫
投资微博
城市上海
政务旅游

数据仓库为什么要用事实表和维度表?3000字干货,面试也能用

2月10日 艮山观投稿
  今天给大家分享一下数据仓库的精髓:维度建模。
  关于数据仓库相关的内容,我们之前分享过《数据仓库基础概述》,时间比较久远,是去年写的文章了。今天和大家分享一下数据仓库中的维度建模,这是数仓的经典内容。
  一、什么是维度建模
  维度建模是数据仓库领域的大师之一RalphKimball所倡导,他参与所著的《TheDataWarehouseToolkitTheCompleteGuidetoDimensonaModeling》,中文名《数据仓库工具箱》,是数据仓库工程领域最流行的数仓建模经典著作。建议有时间的朋友可以读一读。
  维度建模以分析决策的需求出发构建模型,构建的数据模型为分析需求(也就是我们通常所说的数据分析)服务。它重点解决如何更快速完成分析需求,同时还有较好的大规模复杂查询的响应性能。
  因此,说白了,所谓的维度建模就是一种组织数据仓库的形式、模型,用这种方式组织搭建的数据仓库,对快速支持数据分析有着巨大的帮助。目前也是比较主流的数仓模型了。
  二、维度建模基础知识
  下面介绍一下关于维度建模的一些基础知识,主要包括事实表、维度表、切片、钻取等。
  (1)事实与事实表(FactTable)
  事实表是指其中保存了大量业务度量数据的表,是数仓最核心的表。
  事实表中的度量值一般称为事实。通常,最有用的事实就是数字类型的事实和可加类型的事实。事实表的粒度,决定了数据仓库中数据的详细程度。
  下图为例。中间的表:服装销售明细表,就是一张事实表。其中的销售金额、成本、利润,都是事实,也是我们需要分析的目标数据。
  一般事实表中只存放数字或一些flag用来统计,如:销售金额、成本等。另外,通常事实表中的数据不允许修改,新的数据只是简单地添加到事实表中。
  事实表特点:数据量庞大、列数少、经常变化。这个比较好理解,因为实事表是一张业务表嘛,业务肯定是不断有新的数据加进来的。
  (2)维度与维度表(DimensionTable)
  维度表是用户来分析数据的窗口,比如时间、地区、用户等。
  维度表中包含事实表中记录的特性,有些特性提供描述性信息,有些特性指定如何汇总事实数据表数据,以便为分析者提供有用的信息。
  例如上图,包括了五张维度表:时间维表、产品维表、地域维表、用户维表、支付维表。每一张维度表对应现实世界中的一个对象或概念。
  每一张维度表利用维度关键字(图中标红字段)通过事实表中的外键约束事实表的中某一行。
  维度表等特点:很多描述性的列,行数较少,内容较固定。这个也好理解,比如地域,省市区县这些内容十几年都不会有啥变化。
  (3)粒度
  粒度是指数据仓库的数据单位中,保存数据的细化程度的级别。简单点来看,在实事表中一条记录所表达的业务细节,就是粒度。
  通常,为了便捷的下钻分析,我们都会使用到最小粒度。比如订单表中,最小粒度就是一条订单的记录。使用最小粒度的优点:可以频繁的ETL操作很多数据挖掘需要最小粒度数据方便向下钻取
  当然,使用最小粒度也有缺点:存储和维护代价较高需要进一步构建汇总事实表来支持汇总数据查询
  (4)切片、切块与旋转
  切片与切块主要是用来进行数据分析的。我们以下面的三维(产品、年度、地区)为例。
  切片:从多维数组中选定一个二维子集,切出一个平面。比如选中上图的2011年,这就是一个切片。切块:从多维数组中选定一个三维子集,切出一个立方体。比如上图中,年度选择了2011、2012,然后看所有的数据内容,这就是一个切块。旋转:改变一个报告(页面)显示的维方向
  (5)钻取
  根据维层次,改变数据分析的粒度,就是钻取分析,主要包括上钻(也叫上卷)和下钻。其实Excel中的数据透视就是各种上卷和下钻。
  下钻:从汇总数据深入到细节数据进行观察或增加新维上钻(上卷):从某一维上将低层次的细节数据概括到高层次的汇总数据或减少维数钻透:直接下钻到最明细的数据。
  三、维度建模的三种模型
  上面介绍了关于维度建模的一些基础知识,下面聊一聊维度建模的几种具体模型:星型模型、雪花模型、星座模型。
  (1)星型模型
  所谓星型模型,具体表现是:事实被维度所包围,且维度没有被新的表连接。如下图。
  每个维表都有一个维作为主键,所有这些维的主键组合成事实表的主键。
  可以看出,星型模型是比较单纯的模型,像星星一样触角没有延伸了。
  (2)雪花模型
  所谓的雪花模型,是有一个或多个维表没有直接连接到事实表上,而是通过其他维表连接到事实表上,就像雪花一样。如下图:
  雪花模型去除了数据冗余,更贴近与业务。尽可能降低数据存储量以及联合较小的维表来改善查询性能。
  为啥这么说呢?主要是和星型模型对比而言的。看下面的示例图。如果是星型模型,则需要在【product】表中的【category】把所有的信息都列出来,而雪花模型可以在【product】维度表中继续增加关联即可。
  但是可以想象到,雪花模型分析数据时,操作比较复杂。毕竟需要关联的内容越来越多。但数据的存储量下来了,因为冗余信息进行了提炼嘛。
  (3)星座模型
  无论是星型模型还是雪花模型,都是单事实表的情况。但通常来讲,实践当中大部分情况都是多事实表的。这时就是需要星座模型了。
  所谓星座模型,是多个事实表共享维度表,因而可以视为星型模型的集合,故亦称星座模型(星系模型)。如下图:
  星座模型是数据仓库最常使用的模型。
  四、相关实践技术
  主要看看实事表和维度表的相关内容。
  (1)实事表
  事实表主要包括以下四种。事务事实表:该类型表的一行对应空间或时间上某点的度量事件。与粒度同层次的事实表,可以直接将事实字段进行Sum、Count等聚合操作。周期快照事实表:该类型表中的每行汇总了发生在某一标准周期,如某天、某周、某月的多个度量事件。这类表非常适合跟踪长期的过程,如银行账户和其他形式的财务报表。无事实事实表:没有度量事实,仅记录一系列某一时刻发生的多维实体。非事实型事实表通常用来跟踪一些时间或者说明某些活动的范围。累积快照事实表:行汇总了发生在过程开始和结束之间可预测步骤内的度量事件。管道或工作流过程(履行订单、索赔过程),都可以在此类事实表中被建模。
  (2)维度表
  关于维度表,主要看看缓慢变化维。
  什么是缓慢变化维?在现实世界中,维度的属性并不是静态的,它会随着时间的流失发生缓慢的变化。这种随时间发生变化的维度我们一般称之为缓慢变化维。
  比如,在一个零售业数据仓库中,事实表存着销售人员的销售记录,某天一个销售人员从北京分公司调到上海分公司了,那么如何来保存、处理这个变化呢?
  如果我们要统计北京地区或上海地区的总销售情况的时候,这个销售人员的销售记录应该算在北京还是算在上海?当然是调离前的算在北京,调离后的算在上海,但是如何标记这个销售人员所属区域?这里就需要处理一下这个维度的数据,即我们缓慢变化维需要做的事情。
  处理缓慢变化维的三种方式:直接覆盖原值:这个比较简单粗暴。但是如果想要做历史分析的话,就比较难了,一般不太覆盖。增加属性列:增加一个新列,来记录变化。这种适合变化比较少的情况,如果经常变化,增加无限量个字段明显不合适。增加维度行:直接增加一条新纪录,并用一个专门的字段(可以是时间、版本、是否生效等等)进行标识,区分哪个数据是最新的。
  如上图,比较直观的阐述了三种处理方式的差异。
  关于维度建模相关的内容,今天就分享这些。感谢朋友们的关注,后续针对数仓相关的内容,继续进行分享。
  转载首席数学科学家
  最后,给大家整理了一些我常用的数字可视化大屏素材和模板,使用频率很高。
投诉 评论 转载

我的非洲历险化险为夷竟然靠的是这种小东西前些年和几个朋友去了趟非洲几天,总体来讲行程还算顺利,但期间在非洲某国的亲身历险经历还是让我记忆犹新,没想到用从中国带去的一种小东西,竟然多次帮助我们化险为夷,一路顺畅。下面我……世界杯变天!曝南美劲旅正式被逐,递补球队出炉,意大利彻底无缘2022年卡塔尔世界杯将在今年11月举行,英国媒体报道称,已经晋级决赛圈的南美劲旅厄瓜多尔将被逐出世界杯,智利成为递补球队。在无缘世界杯的国家队中,意大利的FIFA排名最高,但……余承东深港澳车展语出惊人遭何小鹏怒怼想扔鞋砸过去华为消费者业务CEO余承东外号大嘴,除了形似之外,另一个含义就是他经常在一些公开场合冒出一些语出惊人的观点,虽然当时听起来有点狂妄自大,但很多当时立的Flag事后都实现了,这也……三味药煮水,一润肺,二滋肾,三排毒,横扫嗓子干,喉咙疼,咽炎大家好,我是沈医生,今天给大家介绍一个小方子,只用三味药煮水,就可以润肺利咽,滋阴补肾,排出肺中的热毒,治疗嗓子干,嗓子痛的情况,如果你有急慢性咽炎,经常嗓子不舒服,那这篇文章……上帝居住的地方数百年来,基督徒确切地知道天堂在哪里:在我们之上,在星星之上。然后是新的宇宙学家天文学家康拉德阿拉库斯(ConradAslachus)的《天堂描述》(1623年)感觉接近……提醒中老年人生活别太节俭,多吃5种营养食物,越活越年轻受传统观念的影响,老年人在生病时,都喜欢吃一些清淡或者具有滋补性的食物来保养身体,比如白粥和红烧肉。然后上了年纪的老人,身体素质开始退化,体内各种物质开始加速流失,这些食……滴滴!头条美女赏析驾到,请接驾头条美女真的美不胜收,这里自有颜如玉,今天让我带你一起一睹芳容吧,废话不多说!赏析开始怎么样,是不是很好看吧,不要急,我们继续赏析丝袜美女是我的最……阿里巴巴能耗云总经理周文闻数字创新驱动绿色低碳发展的探索与实12月23日,2022年亚太经合组织(APEC)中小企业工商论坛低碳与绿色发展赋能专精特新企业论坛(以下简称绿色发展论坛)在北京正式举行。该论坛以科技赋能创新引领绿色发展……苹果最成功的5款手机!你用过几款?苹果历史上最成功的五款手机。第一款:初代iPhone重新定义了手机,凭借一己之力颠覆了整个手机行业,当时的行业老大哥诺基亚还是全实体按键,而iPhone仅凭一块3。……数据仓库为什么要用事实表和维度表?3000字干货,面试也能用今天给大家分享一下数据仓库的精髓:维度建模。关于数据仓库相关的内容,我们之前分享过《数据仓库基础概述》,时间比较久远,是去年写的文章了。今天和大家分享一下数据仓库中的维度……秒杀成套路,这股歪风该杀一杀了作者:赵志疆原价959元,抢购价199元限量5000份1分钱商品,拼手速的时候到了1元手机链接马上上,大家赶紧准备抢商家说的1分钱商品真有那么多吗?如果抢到了商家就真的会……人民币会一直贬值下去嘛?有希望代替美元嘛?中国金融业潜伏着人民币贬值的太厉害了,现在已经达到了6。92,距离7就一步之遥了。管理层什么时候会出手制止?其实人民币贬值和美元的升值,归根结底还是美国不顾一切的进行加息降低通胀,现在美国的防……
被恒大坑惨?南通一建二建三建及苏中建设几乎全军覆没恒力凭什么能五次入选世界500强?EA和光荣的狩猎游戏有望在2023年初发售索尼Xperia1V外观曝光额头边框加入微型相机,比屏下方案中国武术真的是花拳秀腿赵长军十连冠真的是徒有虚名吗?太难了!杜峰山西队很团结!没法用输球来培养人,牺牲球队利益罗平县板桥镇无人问津的小山村摇身变乡愁打卡地隐患不小!陈梦肩伤王曼昱腿伤,身体状态最好的只有孙颖莎王艺迪31!意甲积分榜全乱了前7仅差2分,罗马让出榜首,米兰跌至第天安门广场祝福祖国巨型花果篮亮相惠若琪的重生回忆告别赛场的女排白金一代队员之六在光子芯片之后,中国也取得量子芯片突破,不再需要EUV光刻机
家庭客厅暖气怎么开家庭客厅暖气的操作方法安全生产合同通过3D静电纺丝超快制备纳米纤维基3D宏观结构文景之治的本质维护中央集权巩固统治教师的工作总结HR慧眼识人才的七大关键问题央视危机公关三原因力促围棋转播说漏嘴浅谈浙江横店影视职业学院课堂教学创新老年人一年四季食疗有哪些原则善良不能因善良之名而寸步难行大国重器观后感

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找江西南阳嘉兴昆明铜陵滨州广东西昌常德梅州兰州阳江运城金华广西萍乡大理重庆诸暨泉州安庆南充武汉辽宁