大数据和Hadoop时代的维度建模和Kimball数据集市_光环大数据Hadoop培训
- 格式:pdf
- 大小:332.98 KB
- 文档页数:6
光环大数据培训:大数据和云计算大数据真的在云计算上的快车上吗光环大数据培训了解到,软件初创厂商AtScale公司去年年底发布了其年度大数据成熟度调查报告(以前称为“hadoop成熟度调查”),显示商业智能大数据是首要任务,并正处于云计算的快速发展阶段,数据治理越来越受到关注。
该报告及其结果在最近ODPi用户顾问委员会(UAB)的会议上成为了一个主要的讨论话题,ODPi用户顾问委员会(UAB)是由来自汽车,技术和娱乐行业等使用Apache Hadoop和其他大数据技术的大型企业的代表组成。
ODPi UAB十分认同报告中所提出的日益增长的数据治理问题。
自助服务访问大数据和这种自助服务的治理确实触动了人们的心弦。
行业专家讨论了让人们帮助推动自助服务访问政策的概念,这反映出越来越多的数据科学家是业务部门的一部分,而不是IT 部门。
该小组一致认为,仅持有治理和安全控制的IT目前的状态是不具成本效益的,而自治可能是一种帮助规模使用的策略。
关于云计算中大数据的主题,ODPi UAB在混合云模型中看到了他们的未来。
虽然他们认为人们将在未来三年内看到云计算更多的应用,但他们将会在现有投资的基础上开展,而不是完全取代现有的投资。
此外,ODPi UAB认为现有的中央处理与本地处理节点相辅相成,以帮助扩大需求,更好地遵守法规。
目前,UAB 成员看到全面扩展到云计算成本过高,但随着物联网数据本身运行的用例开始增长,云计算将变得更加有趣。
在ODPiUAB阐述之后,然后回到企业自己的使用模式。
在本文中将介绍这些使用模式,ODPiUAB提供的见解以及云计算在Hadoop和大数据中的作用的体验。
预生产和生产Hadoop之间有明显的区别。
表1概述了随着企业使用情况的变化,运营Hadoop的核心差异。
AtScale公司的报告指出,73%的受访者在使用生产,与2015年同期相比增长了8%。
调研机构Gartner公司的业务调查报告为15%以上。
通俗易懂数仓建模—Inmon范式建模与Kimball维度建模在数据仓库领域,有两位大师,一位是“数据仓库”之父B i l l I n m o n,一位是数据仓库权威专家R a l p h K im ba l l,两位大师每人都有一本经典著作,I n m o n大师著作《数据仓库》及K im ba l l大师的《数仓工具箱》,两本书也代表了两种不同的数仓建设模式,这两种架构模式支撑了数据仓库以及商业智能近二十年的发展。
今天我们就来聊下这两种建模方式——范式建模和维度建模。
本文开始先简单理解两种建模的核心思想,然后根据一个具体的例子,分别使用这两种建模方式进行建模,大家便会一目了然!一、两种建模思想对于In mo n和K i m ba l l两种建模方式可以长篇大论叙述,但理论是很枯燥的,尤其是晦涩难懂的文字,大家读完估计也不会收获太多,所以我根据自己的理解用通俗的语言提炼出最核心的概念。
范式建模范式建模是数仓之父In mo n所倡导的,“数据仓库”这个词就是这位大师所定义的,这种建模方式在范式理论上符合3N F,这里的3N F与O L T P中的3N F还是有点区别的:关系数据库中的3N F是针对具体的业务流程的实体对象关系抽象,而数据仓库的3N F是站在企业角度面向主题的抽象。
I n m o n模型从流程上看是自上而下的,自上而下指的是数据的流向,“上”即数据的上游,“下”即数据的下游,即从分散异构的数据源-> 数据仓库-> 数据集市。
以数据源头为导向,然后一步步探索获取尽量符合预期的数据,因为数据源往往是异构的,所以会更加强调数据的清洗工作,将数据抽取为实体-关系模型,并不强调事实表和维度表的概念。
维度建模K i m b al l模型从流程上看是自下而上的,即从数据集市-> 数据仓库-> 分散异构的数据源。
K i mb a l l是以最终任务为导向,将数据按照目标拆分出不同的表需求,数据会抽取为事实-维度模型,数据源经E T L转化为事实表和维度表导入数据集市,以星型模型或雪花模型等方式构建维度数据仓库,架构体系中,数据集市与数据仓库是紧密结合的,数据集市是数据仓库中一个逻辑上的主题域。
光环大数据_大数据培训_大数据时代大数据争夺才是本质光环大数据人工智能培训机构认为,近年来,云计算、大数据正在对物流进行强化改进,并在其中扮演着越来越重要的作用。
无论是顺丰菜鸟的掐架,还是现在京东“封杀”天天快递,实则都是一定程度对数据资源争夺。
在大数据方兴未艾、众说纷纭的时刻,大数据在变革车货匹配、运输线路分析、销售预测与库存、设备修理预测、供应链协同管理等方面发生着潜移默化的作用,逐渐改变和影响着物流人的思维方式。
G7吴海波认为,“过去,物流企业从代码到运维到安全到网络的众多领域,要耗费大量人力、财力。
云计算则解决了这个问题:减少了物流企业成本,降低建设门槛,为企业发展减轻了负担,同时将物流产业的服务化,产生更多可以利用的数据。
”不可否认,云计算、大数据正在对物流进行强化改进,并在其中扮演着越来越重要的作用。
大数据与物流行业相结合,再辅以统筹学“最优解”核心思想,能帮助物流行业解决非常多的问题——比如最常见的路径规划问题,中转枢纽选址问题,以及定制物流服务的定价问题等等。
当然在实际应用场景中,也有很多不确定的因素。
除了“优化模型”之外,统筹学中的“随机建模”理念也能帮助物流行业实现“智慧化”,杉数科技 CTO 王子卓说道。
的确,大数据在物流行业的重要地位,从近两月的电商物流巨头大战便可略知一二。
6月初,“丰鸟大战”无疑引起了快递行业内外的大动荡。
业内人士分析,顺丰、菜鸟掐架背后,核心还是数据资源的争夺。
中关村数字产业联盟副理事长、DCCI互联网研究院院长刘兴亮认为,“为了抢夺物流数据的控制权,菜鸟和顺丰不惜上演大战,由此可见大数据的重要性。
而关闭数据接口的背后,本质上也是顺丰和菜鸟对物流大数据的话语权争夺”。
而这一次,京东成了物流数据大战的主角。
7月24日下午京东向商家推送“关于使用平台推荐快递的通知”,通知称建议于7月底之前与服务质量好的京东物流、顺丰、中通、韵达、申通合作,其他的快递公司均不在推荐之列。
Hadoop是大数据的未来_光环大数据培训有人认为hadoop 正在失败,但硅谷数据管理公司Hortonworks 的总经理Vamsi K. Chemitiganti 并不这么看,为了反驳此前一篇文章《为什么Hadoop 正在消亡?(Why Hadoop is Failing)》的观点,他在自己的博客上写了一篇论述自己看法的文章,他认为达尔文式的开源生态系统正在确保Hadoop 成为稳固和成熟的技术平台。
机器之心对这篇反驳文章进行了编译介绍,但本文内容并不代表机器之心的观点。
「女士,那么刚出生的孩子能干什么?」——迈克尔·法拉第,在18 世纪被问及新发明的电有什么用的时候。
Hadoop为什么Hadoop 正在发展壮大过去两年来,我一直致力于大数据方面的研究,并在这段时间里经历了令人感到震撼的变革,因为我一直在全球各地为银行业的领导者们提供咨询服务。
这也是为什么当近期KDnuggets 出现了一篇挑衅性质的《为什么Hadoop 正在消亡》时,我必须站出来反对了。
在那篇文章中,作者的讨论具有建设性,但问题在于其讨论基于一些毫无根据的假设。
在深入研究之前,我们要考虑其中的背景。
公司业务中数字架构的出现意味着公司能够与全球客户/消费者/病人持续地在线互动。
其目的并不仅仅是为了提供友好的可视化内容,而是为了提供跨渠道,多类型的个性化服务。
移动应用首先迫使企业将服务形式升级为与消费者在多渠道中展开沟通。
例如银行业,所有银行现在都涵盖了四到五种服务方式:移动app、电子银行、呼叫中心、快捷银行等。
医疗保健业有希望成为下一个改变面貌的行业,护理人员已经开始采用iPad 来协助诊断,存储和处理患者的药物和疾病数据。
大数据技术的发展是为了克服以往方法(RDBMS 和EDW)的局限性,解决在数字应用堆栈中数据架构和分析的挑战。
这些挑战包括:数据体量扩大的挑战。
公司数据种类的飞速膨胀。
Hadoop 显然也有自己的限制——例如支持低延迟BI(Business Intelligence,商业智能)查询的能力。
O大数据学习_光环大数据大数据厉害了随着信息技术的飞速发展,各领域的数据量都在爆发式增长,尤其在云计算、物联网、移动互联网等IT技术得到广泛应用之后,数据的增长实现了从量变到质变的转型,大数据如浪潮般席卷而来,人类社会进入大数据时代。
大数据不仅仅只是一次颠覆性的技术革命,更是一场思维方式、行为模式与治理理念的全方位变革,尤其在政府治理领域,大数据带来了巨大的变革潜力和创新空间。
在“全面深化改革,推进国家治理体系和治理能力现代化”的时代背景下,应充分重视大数据在政府治理中的重要价值,牢牢抓住大数据为政府治理提供的创新机遇,光环大数据一直关注大数据发展趋势。
光环大数据专注于为广大大学生和职场人士提供大数据技术的培养,与数百家一线知名企业签订用人协议,保障学员高薪就业,并与高校共同制订大数据行业人才培养标准,光环大数据已然成为大数据行业的人才港湾。
优秀光环大数据教研团队1)大学生数据库课程,专业的Oracle工程师加上企业数据库实战项目,使大学的数据库课程设计真正实战化;2)为大学生毕业设计提供全面指导,对于有志于从事数据库领域的大学生,光环大数据工程师可为其量身定制、提供专业的指导方案;3)为大学数据库课程研发工作提供咨询、培训、经典项目案例,并与其合作共同开发教材;4)为大学数据库部分课程指派讲师,让大学生在校内提前接触到企业的项目案例并接受一线的工程师的指导; O 5)在大学建设“光环大数据Oracle数据库实验室”,与大学院校共同培养专业人才;6)为大学在校生提供企业实践机会,光环大数据将企业真实的项目案例和实战环境通过实践等方式让学生亲身体会、轻松掌握。
光环大数据课程分析1)严苛的考核制度,随学随练,及时掌握。
2)课程模块化,不同讲师负责不同模块,术业有专攻。
3)紧跟市场需求,课程及时更新。
4)与校企深度合作,强强联手,参与制定高校专业课程。
5)内容全,技术深,实战性强。
光环大数据面向的是全社会的人才培养,只要你有意愿学习大数据,光环大数据都会尽最大努力教授你。
光环大数据告诉你大数据是万能的吗_光环大数据培训光环大数据培训机构,数据科学正在被当做货物一样崇拜数据科学已经逐渐成为各个行业公司的重要竞争优势。
随着越来越多的公司开始引进数据管理的新模式,公司内部就可能会产生所谓的“货物崇拜”,即去学习模仿一系列行为而不去了解其中动机的现象。
在数据科学的应用方面,公司很可能会照搬数据科学背后的技术体系,而忽略了建立数据驱动型的组织文化。
这种情况颇为常见,对此我想分享一下解决之法。
数据科学是一种强大的工具,其优势在于:∙自动决策∙辅助人为决策虽然有许多公司已经认识到了数据科学的重要性,但他们往往没有匹配上有效的数据能力。
个人认为这源于对数据科学的根本性误解,这种误解让人们在忽略自身的基础上进行数据科学的技术构架。
其他的领域也存在相似的问题。
本文阐述了我对于规避此类现象的最佳办法以及如何从数据科学投资领域获得更多价值的思考。
一个典型的数据科学项目绝大多数数据科学项目和其他的IT项目一样,遵循以下的发展轨迹:∙上层管理者同意立项,组员们踌躇满志,饱含希望;∙初始原型看似前途无量,项目本身也似乎能解决一个非常重要的组织问题;∙项目中期效果不佳,没能完成既定目标;∙同时,公司管理层不再关心项目的进展,项目推进受阻;∙项目结束,但是没有能实现最初承诺的组织变革。
对于数据项目而言,这个流程本身就是有问题的。
因为数据项目意味着引入新的管理方法和组织行为。
与许多传统的IT项目不同,数据项目是对现有流程的改进,并且旨在改变组织整体的运行模式。
这个项目为什么失败了?多数人,尤其是数据科学家,会归咎于技术缺陷或是管理不当。
然而在我看来,早在初始设计没能理清项目完成后要如何适应组织运作的时候,失败就已成定局。
数据科学的人性面就我的经验来看,一个“数据驱动型组织”要做的远不止分析和测量。
从根本上说,要成为一家数据驱动的公司,就需要让数据成为公司员工日常工作生活的一部分。
这与上述项目形成了鲜明对比,那些项目更注重技术应用而非达成目标,是种典型的货物崇拜行为,例如最为常见的“企业数据湖项目”。
hadoop究竟是什么_光环大数据培训不少读者反馈本站的内容太专业、太技术,虽然很想看懂点什么,但是满眼的专有名词,心累!为了和广大吃瓜群众融为一体,我们特别推出了《白话大数据》系列,从此麻麻再也不用担心我看不懂啦,今天先推第一集《Hadoop究竟是个什么鬼》所以充满了使命感的我们,是时候站出来解释一下了!!1建立在大数据背景之下当然,要解释清楚什么是Hadoop那得要从大数据说起。
在20多年前,也就是上个世纪90年代,数据大量产生(也并不是之前没有这么多数据,而是由于科学技术的原因,这些日常生活中的数据转瞬即逝并没有被人们记录下来)这个“大量产生”有多么夸张呢,现在的数据量相当于之前数据量的上百上千倍!数据如此快速地增长势必带来一些问题,我们先来做一道小学3年级的应用题,请听题:90年代的数据量相当于10个零件,一个小朋友1分钟走一趟搬1个零件,花10分钟可以搬走这些零件;90年代以后的数据量相当于10000个零件,这个小朋友也长大了,他1分钟走一趟可以搬4个零件,那么要搬走这些零件要花多长时间呢?答案是2500分钟!也就是说,数据读取技术的发展完全跟不上数据量的增长速度啦!于是聪明的我们就用到了分布式——是整个Hadoop的核心思路。
2运用分布式解决单体能力有限的问题什么是分布式?一个很浅显的道理,我们完全没必要培养一个1分钟能搬100个人零件的壮汉,那也不太现实1个人搬零件搬得太慢我们可以请10个人呀,再不行就请100个人、1000个人,这就是所谓的分布式。
但随着零件数的增加问题,如何处理好这么多零件呢?3Hadoop核心设计:HDFS和MapReduce我们首先要分配好这些零件。
大数据时代我们面临的是以TB、PB甚至EB为单位的数据,因此,我们需要建立一个既能存的下如此大量的数据,而且还能高速高效地读写文件的文件管理系统——HDFS。
HDFS也就是Hadoop分布式文件系统,将一份巨型的文件分散到多台存储设备中,并配合一个调度程序来管理这些文件。
⼤数据:ER、维度、DataVault模型简述⼀、为什么需要建⽴数据模型数据模型是组织和存储数据的⽅法;适合业务和基础数据存储环境的模型,具有以下⼏点好处:1. 性能:快速查询所需要的数据,减少数据的 I/O 吞吐;2. 成本:减少不必要的数据冗余,实现计算结果复⽤,降低数据系统中的存储和计算成本;3. 效率:改善⽤户使⽤数据的体验,提⾼使⽤数据的效率;4. 质量:改善数据统计⼝径的不⼀致性,减少数据计算错误的可能性;⼆、关系数据库系统、数据仓库、OLTP和OLAP 系统区别⼤量的数据仓库系统依托强⼤的关系数据库能⼒存储和处理数据,其采⽤数据模型⽅法也是基于关系数据库理论;OLTP 系统:通常⾯向的主要数据操作是随机读写,主要采⽤满⾜ 3NF 的实体关系型存储数据,从⽽在事务处理中解决数据的冗余和⼀致性问题;OLAP 系统:⾯向的主要数据操作是批量读写,不关注事务处理的⼀致性,主要关注数据的整合,以及在⼀次性的复杂数据查询和处理中的性能;三、典型的数据仓库建模⽅法论1、ER(Entity Relationship 实体关系)模型数据仓库之⽗ Bill INmon 提出的建模⽅法:从全企业的⾼度设计⼀个 3NF 模型,⽤实体关系(ER)模型描述企业业务,在范式理论上符合 3NF。
数据仓库中的 3NF 和 OLTP 系统中的 3NF 的区别:数据仓库的 3NF 是站在企业⾓度⾯向主题的抽象,⽽不是针对某个具体业务流程的实体对象关系的抽象;数据仓库的 3NF 特点:1. 需要全⾯连接企业业务和数据;2. 实施周期⾮常长;3. 对建模⼈员的要求较⾼;采⽤ ER 模型建设数据仓库模型的出发点是整合数据,将各个系统中的数据以整个企业⾓度按主题进⾏相似性组合和合并,并进⾏⼀致性处理,为数据分析决策服务,但并不能直接⽤于分析决策;ER 模型建模步骤:1. ⾼层模型:⼀个⾼度抽象的模型,描述主要的主题以及主题间的关系,⽤于描述企业的业务总体概况;2. 中层模型:在⾼层模型的基础上,细化主题的数据项;3. 物理模型(也叫底层模型):在中层模型的基础上,考虑物理存储,同时基于性能和平台特点进⾏物理属性的设计,或者做⼀些表的合并、分区设计;2、维度模型维度模型:从分析决策的需求出发构建模型,为分析需求服务,重点关注⽤户如何更快速的完成需求分析,具有较好的⼤规模复杂查询的响应性能;维度模型的典型代表:星形模型,以及在⼀些特殊场景下使⽤的雪花模型;维度模型设计步骤:1. 选择需要进⾏分析决策的业务过程;2. 选择粒度:在数据分析中,要预判所有分析需求要细分的程度,决定选择的粒度。
星环大数据工程师考试题目答案随着大数据时代的到来,数据分析与处理的需求不断增加。
作为大数据领域的重要职业,大数据工程师的素质与能力显得尤为重要。
星环大数据工程师考试为了选拔优秀的数据工程师,设计了以下一系列题目,下面将给出这些题目的详细答案。
一、基础知识题(300字)1. 论述什么是大数据?大数据是指由传统的数据处理应用无法处理的大规模、高速率及多样化数据资源。
在大数据中,数据量大到难以用常规的数据库工具进行有效的管理和处理,同时其特征表现为数据量大、流速快、种类丰富以及价值密度低等。
2. 解释什么是数据仓库?数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策,其数据源来自各种不同的操作数据库、数据源系统以及第三方系统。
二、数据处理题(500字)1. 请写出ETL的全称,并简述其作用。
ETL(Extract-Transform-Load)是将数据从源系统中抽取出来,经过数据清洗、整合和转化后,将数据加载到目标系统中的过程。
ETL的主要作用是将分散、异构、冗余数据整合为一体,以满足目标系统的需求。
2. 解释维度建模和事实表。
维度建模是一种数据库设计方法,以事实表为中心,通过多个与之关联的维度表来描述业务过程。
事实表包含了衡量业务过程的数值度量,而维度表则存储了与事实表相关的上下文信息。
三、大数据工具题(600字)1. 请列举几个常见的大数据处理工具,以及它们的特点和应用场景。
- Hadoop:分布式计算框架,适用于海量数据的存储和计算。
- Spark:快速通用的大数据处理引擎,适用于实时数据处理和机器学习。
- Hive:基于Hadoop的数据仓库基础设施,适用于大规模数据集的查询和分析。
- Kafka:高吞吐量的分布式消息系统,适用于实时流式数据处理。
- Flink:分布式流处理和批处理框架,适用于实时和批量数据处理。
2. 请简述Hadoop的工作原理。
Hadoop采用分布式存储和计算的方式来处理大规模数据。
大数据和Hadoop时代的维度建模和Kimball数据集市_光环大数据Hadoop培训有一个常见的误区,数据建模的目的是用ER 图来设计物理数据库,实际上远不仅如此。
数据建模代表了企业业务流程的复杂度,记录了重要的业务规则和概念,并有助于规范企业的关键术语。
它清晰地阐述、协助企业揭示商业过程中模糊的想法和歧义。
此外,可以使用数据模型与其他利益相关者进行有效沟通。
没有蓝图,不可能建造一个房子或桥梁。
所以,没有数据模型这样一个蓝图,为什么要建立一个数据应用,比如数据仓库呢?为什么需要维度建模?维度建模是数据建模的一种特殊方法。
维度建模有两个同义词,数据集市和星型结构。
星型结构是为了更好地进行数据分析,参考下面图示的维度模型,可以有一个很直观的理解。
通过它可以立即知道如何通过客户、产品、时间对订单进行分割,如何通过度量的聚集和比较对订单业务过程进行绩效评估。
维度建模最关键的一点,是要定义事务性业务过程中的最低粒度是什么。
如果切割或钻入数据,到叶级就不能再往下钻取。
从另一个角度看,星型结构中的最低粒度,即事实和维度之间没有进行任何聚集的关联。
数据建模和维度建模标准数据建模的任务,是消除重复和冗余的数据。
当数据发生变化时,我们只需在一个地方修改它,这有助于保证数据的质量,避免了不同地方的数据不同步。
参考下面图示的模型,它包含了代表地理概念的几张表。
在规范化模型中,每个实体有一个独立的表,数据建模只有一张表:geography。
在这张表中,city 会重复出现很多次。
而对于每个city,如果country 改变了名字,就不得不在很多地方进行更新。
注:标准数据模型总是遵守3NF 模式。
标准的数据建模,本身并不是为了商业智能的工作负载而设计的。
太多的表会导致过多的关联,而表关联会导致性能下降,在数据分析中我们要尽力去避免这种情形发生。
数据建模过程中,通过反规范化把多个相关表合并成一个表,例如前面例子里的多个表被预合并成一个geography 表。
那么为何部分人认为维度建模已死?一般人都认可数据建模的方式,而把维度建模当成特殊处理方式,它们都是有价值的。
那为什么在大数据和Hadoop 的时代,部分人会认为维度建模没用了?“数据仓库之死”首先,一些人混淆了维度建模和数据仓库。
他们认为数据仓库已死,于是得出结论:维度建模也可以被丢进历史的垃圾箱。
这种论点在逻辑上是连贯的,但是,数据仓库的概念远没有过时。
我们总是需要集成的、可靠的数据来产生商业智能仪表盘(BI Dashboards)。
只读结构的误解第二个常听见的争论,比如“我们遵循只读方式的结构(Schema),所以不需要对数据再进行建模了”。
依我看来,这是数据分析过程中最大的误解之一。
我同意起初仅转储原始数据,这时不过多考虑结构是有意义的。
但是,这不应该成为不对数据进行建模的借口。
只读方式的结构只是降低了下游系统的能力和责任,一些人不得不咬牙去定义数据类型。
访问无模式数据转储的每一个进程都需要自己弄清楚发生了什么,而这完全是多余的。
通过定义数据类型和正确的结构,可以很容易地避免这些工作。
再谈反规范化和物理模型是否那些宣传维度建模的观点实际上已过时了?的确有些观点比上面列出的两条更好,要理解它们需要对物理建模和Hadoop 的工作方式有一些了解。
前面简单提到采用维度建模的原因之一,和数据的物理存储方式有关。
标准数据建模中每个真实世界里的实体,有一个自己的表。
我们这样做,是为了避免数据冗余和质量问题在数据中蔓延。
越多的表,就需要越多的关联,这是标准建模的缺点。
表关联的代价是昂贵的,特别是关联数据集中关联大量记录的时候尤其突出。
当我们考虑维度建模时,会把多个表合并起来,这就是所谓的预关联或者说数据反规范化。
最后的结果是,得到更少的表、更少的关联、更低的延迟和更好的查询性能。
可参与领英上相关的讨论。
彻底反规范化为什么不把反规范化做到彻底?去掉所有的表关联只保留一张表?的确,这样做可以不需要对任何表进行关联,但是可以想象到,它会带来一些负面影响。
首先,它需要更多的存储,因为要存储大量的冗余数据。
随着数据分析的列式存储格式的出现,这一点现在不那么令人担忧了。
反规范化最大的问题是,每次属性值发生变化,就不得不在很多地方进行更新,可能是几千甚至几百万次更新。
一个解决办法是在晚上对模型进行全量重载,通常这比增量更新要更快、更容易。
列式数据库通常采用这种方法,首先将要做的更新存储在内存中,然后异步地写入磁盘。
分布式关系型数据库(MPP)上的数据分布在Hadoop,例如Hive、SparkSQL 上建立维度模型,要很好地理解一个技术上的核心特征,就是它和分布式关系型数据库(MPP)上的建立方式是不一样的。
在MPP 中的节点上分布数据,可以控制每条数据记录的位置。
基于分区策略,例如Hash、List、Range 等,可以在同一个节点上跨表同定位(co-located)各个记录的键值。
由于数据的局部性得到保证,关联速度会非常快,因为不需要在网络上发送任何数据。
参考下面图示的例子,在ORDER 和ORDER_ITEM 表中有相同ORDER_ID 的记录存储在同一节点上:ORDER 和ORDER_ITEM 表中ORDER_ID 对应的键值,在相同的节点做到同定位。
Hadoop上的数据分布数据分布在基于Hadoop 的系统中是非常不同的,我们将数据分割成大型的块(chunks),并在Hadoop 分布式文件系统(HDFS)的各个节点进行分发和复制。
这种数据分发策略不能保证数据的一致性。
参考下面图示的例子,记录ORDER_ID 的键被存储在不同的节点:为了关联它们,需要在网络上发送数据,这样做会影响性能。
处理这个问题的一个策略,是在集群的所有节点上复制要关联的表,该策略被称为广播式关联(broadcast join)。
如果对MPP 使用相同的策略,可以想象,只能用在较小的lookup 或维度表中。
那么当关联一个大的事实表和一个大的维度表,比如客户或产品,甚至关联两个大型事实表时,我们该怎么办?Hadoop上的维度建模为了解决性能问题,可以利用反规范化将大的维度表放进事实表,以保证数据是同定位的(co-located),而对较小的维度表可以在所有节点上广播(broadcast)。
关联两个大型事实表时,可以把低粒度的表嵌套到更高粒度的表中,例如把ORDER_ITEM 表嵌套到ORDER 表中。
高级的查询引擎,比如Impala 或Drill 可以让数据扁平化(flatten out):嵌套数据的策略很有用,类似于Kimball 概念中用桥接表来表示维度模型中的M:N 关系。
Hadoop和缓慢变化维Hadoop 文件系统中的存储是不可变的,换句话说,只能插入和追加记录,不能修改数据。
如果你熟悉的是关系型数据仓库,这看起来可能有点奇怪。
但是从内部机制看,数据库是以类似的机制工作,在一个进程异步地更新数据文件中的数据之前,将所有变更保存在一个不可变的预写式日志(WAL- write-ahead log,Oracle中称为redo log)中。
不可变性(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 已经退休了,但他设计原则的思想和观念仍然是有效的,也将会继续存在。
即使我们不得不让它们适应新的技术和存储类型,它们仍然能够带来巨大的价值。
为什么大家选择光环大数据!大数据培训、人工智能培训、Python培训、大数据培训机构、大数据培训班、数据分析培训、大数据可视化培训,就选光环大数据!光环大数据,聘请专业的大数据领域知名讲师,确保教学的整体质量与教学水准。
讲师团及时掌握时代潮流技术,将前沿技能融入教学中,确保学生所学知识顺应时代所需。
通过深入浅出、通俗易懂的教学方式,指导学生更快的掌握技能知识,成就上万个高薪就业学子。
【报名方式、详情咨询】光环大数据官方网站报名:/手机报名链接:http:// /mobile/。