可介入领英上相干的评论辩论。
彻底反规范化
分布式关系型数据库(MPP)上的数据分布
【编辑推荐】
- 关于Hadoop你须要知道的一些事项
- 干货 | 98道常见Hadoop面试题及谜调剂析(一)
- 10道Hadoop面试真题及解题思路
- 关于Hadoop技巧的HA机制进修
- Hadoop伪分布式搭建操作步调指南
ORDER 和 ORDER_ITEM 表中 ORDER_ID 对应的键值,在雷同的节点做到同定位。
Hadoop上的数据分布
数据分布在基于 Hadoop 的体系中是异常不合的,我们将数据瓜分成大年夜型的块(chunks),并在 Hadoop 分布式文件体系(HDFS)的各个节点进行分发和复制。这种数据分发策略不克不及包管数据的一致性。参考下面图示的例子,记录 ORDER_ID 的键被存储在不合的节点:
为了接洽关系它们,须要在收集上发送数据,如许做会影响机能。
处理这个问题的一个策略,是在集群的所有节点上复制要接洽关系的表,该策略被称为广播式接洽关系(broadcast join)。如不雅对 MPP 应用雷同的策略,可以想象,只能用在较小的 lookup 或维度表中。
那么当接洽关系一个大年夜的事实表和一个大年夜的维度表,比如客户或产品,甚至接洽关系两个大年夜型事实表时,我们该怎么办?
在 Hadoop,例如 Hive、SparkSQL 上建立维度模型,要很好地舆铰一?技巧上的核心特点,就是它和分布式关系型数据库(MPP)上的建立方法是不一样的。在 MPP 中的节点上分布数据,可以控制每条数据记录的地位。基于分区策略,例如 Hash、List、Range 等,可以在同一个节点上跨表同定位(co-located)各个记录的键值。因为数据的局部性获得包管,接洽关系速度会异常快,因为不须要在收集上发送任何数据。参考下面图示的例子,在 ORDER 和 ORDER_ITEM 表中有雷同 ORDER_ID 的记录存储在同一节点上:
Hadoop汕9依υ?度建模
为懂得决机能问题,可以应用反规范化将大年夜的维度表放进事实表,以包管数据是同定位的(co-located),而对较小的维度表可以在所有节点上广播(broadcast)。
接洽关系两个大年夜型事实表时,可以把低粒度的表嵌套到更高粒度的表中,例如把 ORDER_ITEM 表嵌套到 ORDER 表中。高等的萌芽引擎,比如 Impala 或 Drill 可以让数据扁平化(flatten out):
嵌套数据的策略很有效,类似于 Kimball 概念顶用桥接表来表示维度模型中的 M:N 关系。
Hadoop懈弛慢变更维
弗成变性(immutability)对维度模型有什么竽暌拱响?你也许还记得维度建模课程中渐变维的概念(Slowly Changing Dimensions – SCDS)。SCDS 有选择地保存属性值变革的汗青,于是可以在某个时光点上对属性值进行度量。但这不是默认的处理方法,默认情况下会用最新的值来更新维度表。那么在 Hadoop 上若何选择呢?记住!我们不克不及更新数据。我们可以简单地为 SCD 选择默认方法并对每一个变更进行审核(audit)。如不雅想运行基于当前值的报表,可以在 SCD 之上创建一个视图,让它仅仅检索到最新值,应用 Windows 函数可以很轻易做到这一点。或者,可以运行一个所谓归并(Compaction)的办事,用最新的值物理地创建维度表的一个零丁版本。
Hadoop的存储演变
Hadoop 平台的供给商并没有忽视这些 Hadoop 的限制,例如 Hive 就供给了知足 ACID 的事务和可更新的表。根据大年夜量的重要公开问题以及小我经验,这个特点还没有完美到可以安排临盆情况。Cloudera 采取了别的一个手段,应用 Kudu 建立了一个新的可变革存储格局,它并没有基于 HDFS,而是基于本地 OS 操作体系。它完全摆脱了 Hadoop 的限制,类似于列式 MPP 的传统存储层。平日来说,在 Impala + Kudu 如许一个 MPP 上运行 BI 和 Dashboard 的任何应用处景,会比 Hadoop 更好。不得不说,当它涉及到弹性、并发性和扩大性时,有本身的局限。当碰到这些限制时,Hadoop 和它的近亲 Spark 是解决 BI 工作负载的浩揭捉?择。
判决:维度模型和星型模式过时了吗?
我们都知道,Ralph Kimball 已经退休了,但他设计原则的思惟和不雅念仍然是有效的,也将会持续存在。即使我们不得不让它们适应新的技巧和存储类型,它们仍然可以或许带来巨大年夜的价值。
推荐阅读
沙龙晃荡 | 去哪儿、陌陌、ThoughtWorks在主动化运维中的实践!10.28不见不散! 比来,阁下脑测试在同伙圈异常火爆,你只须要进入响应人口并答复几个设定的问题后,就会出现你阁下脑两个年>>>详细阅读
本文标题:大数据时代和Hadoop时代的维度建模和Kimball数据集市
地址:http://www.17bianji.com/lsqh/38237.html
1/2 1