深入分析大数据时代中的数据仓库技术

大数据背景

众所周知,当前是一个数据爆炸的时代,大数据背景下的数据治理是每一个企业应该重点考虑的问题。例如金融机构、电信运营商这种“传统”行业每日需要处理的数据量都已经十分巨大了,中小型互联网公司都已经握着上千万日活了,就更不要说腾讯,阿里这样的互联网巨头。

传统行业的数据治理

以电信运营商为例,一个省级的电信运营商在好多年前一年积累的信息量就已经达到数个PB了,在数据爆炸的时代,我们通过移动互联网随时随地就可以surfing everything,数据爆炸的程度估计可以用指数建模了。

而相比与互联网企业,这些传统行业企业的数据量的特点是:数据价值密度大,数据多呈结构化。这是与互联网企业业务场景的不同之处。这也就意味着,使用大数据开源项目例如Hadoop等难以起到良好的存储效果。

数据仓库现状

数据仓库与数据库的区别大家想必早有耳闻,一个以数据分析为主,另一个以数据的增删查改为主。数据仓库既然以数据分析为主,没有一个足够的数据量谈何分析?我们当前的时代,谈到数据仓库,就自然而然与大数据联系到一起,不然就会被认为是一个没有价值的数据仓库。

既然企业的数据治理这么困难,那数据治理究竟是阿里巴巴、腾讯这样的互联网巨头抑或是工行、移动、联通这样掌握着大量数据的500强企业们的专利呢?

答案也可以说是,也可以说不是。

所谓“是”的原因:

前面说到,传统行业的数据仓库应该以结构化的数据查询为主,在这上面可以进行BI,生成报表,数据挖掘等相关操作。而结构化的数据仓库实现起来比非结构化的数据仓库实现起来要困难很多(我自认为)。而开源产品中主要是面向非结构化数据的,诸如greenplum这种开源的结构化数据仓库其也只能说是一个“广告”性质的开源产品,毕竟greenplum是靠卖数据仓库服务而生存的。而这些商用数据仓库的价格不菲,以teradata数据仓库为例,每年工商银行要支付的费用要以亿为单位来计算。

高价格就意味着,结构化数据仓库很多传统企业用不起,另一方面也没有足够的数据量进行支撑,而这些企业你懂得,很多好东西到他们手中,其实并不会用,因此这个答案是“是”。

另一方面也可以说“不是”,原因是:

数据爆炸时代,每个一定规模的公司都会积累一定的数据量,“大数据,小分析”是当前提到的一个概念。每个企业要想合理规划未来,掌握客观规律,不进行科技投入终归是不太可行的。诸如此类公司,最大的困难估计是没有人会用数据仓库。不过,随着云计算的兴起,数据仓库也已经上云了,从技术角度看,比较好的云上数据仓库有阿里云和华为云两种可供选择,其他的从技术角度,客观分析要比二者性能差。

数据仓库的架构

当前,数据仓库的架构主要可以分为两种:一种是mpp架构,另一种是nosql形式的开源产品。

当今有一句话不知道大家知不知道“Nosql退场,newsql代表未来”。虽然话不能这么说,但是newsql确实是一个很新的概念,而newsql所采用的架构大多数就是mpp架构。所谓的mpp便是大规模并行处理的意思,mpp架构数据库除了支持传统数据库的acid事物,同时也支持集群的线性扩展。而Nosql最大的不足就是不支持事务或者很弱。

mpp相比较于nosql数据库,支持事物,支持sql语录,支持表联接(join)等复杂查询,技术复杂度要比nosql高很多。nosql的优点是扩展性更强,因为mpp架构在线性扩容之后需要做数据的重分布,这里面技术很复杂,感兴趣的比较多的话,我以后再开专题讲解。

OLAP

提到数据仓库,就要谈论一个概念——OLAP,它的意思是联机大规模数据处理,说白了就是进行数据分析的意思,与其相对的是OLTP概念。OLTP偏重于并发,侧重CURD,例如在线支付、交易场景。OLAP偏重分析,侧重查询,数据挖掘。从数据量上讲,OLAP的数据量远远大于OLTP系统,OLAP对应着的就是数据仓库,而OLTP对应着Oracle这类的数据库。

现在的数据仓库也好,数据库也好,只要是满足高可用场景,就不得不考虑分布式这个概念。

数据库的分布式系统

OLAP与OLTP都是分布式系统,一个是分布式的数据仓库,一个是分布式的数据库。通过通过分布式来保障高可用,当然,这里面也面临着一致性的问题需要考虑。

对于OLAP数据仓库系统来讲,我们说过,他是用来对数据进行分析的,很多场景要求即席查询秒级响应,这个要求是非常高的,感兴趣的可以了解一下SQL on hadoop的工具Hive:去趟茅厕的功夫都搞不定。

这就要求分布式架构,同时OLAP还要尽可能地进行SQL语句解析,还要涉及到多表连接这样复杂的业务,甚至还要支持事物,这时候mpp架构就派上用场了,nosql就比较弱了。而这同样是HBase等开源项目难以实现的,但是后者毕竟是NoSQL,高扩展性是其生存的必杀技,因为我们前面说过mpp在线性扩展时需要作数据的重分布,目的是为了保障能够哈希映射,还是很耗时的。

总结

有关数据仓库的架构层面技术就讲解到这里了,这里面涉及到的技术十分复杂,尤其是mpp架构。国内在专门研究mpp架构的厂商不多,大型一点的有阿里和华为在做研究,腾讯、百度貌似也有团队在搞。相比于mpp架构,很多公司可以选择开源软件来实现自己的数据仓库,一般用得多一点的是hbase,这主要是互联网场景存储一些结构化比较弱的数据,实际上更像是一种kv结构。但是对传统厂商这种数据价值密度大的业务场景,就不得不考虑使用teradata等专业的数据仓库了。

?

原文地址:https://www.cnblogs.com/qfdsj/p/9548706.html

时间: 2024-10-14 02:20:48

深入分析大数据时代中的数据仓库技术的相关文章

大数据应用中如何进行技术选型?

大数据应用中如何进行技术选型?影响选型有两个主要指标:性能,容量1.能够支持高并发下的请求的快速响应能力2.能够支持大存储和大检索3.要能够保证服务和存储的高可用 初期会进行多个同类型的技术进行对比和调研 Q::如何进行最终的定型?A:分析当前的业务,结合压测(而不是空洞的去想和纠结)来决定定型: 原文地址:https://www.cnblogs.com/big1987/p/10541696.html

【原创】搜索引擎在大数据时代中的变革

现代的人类学习.生活.工作都已经离不开搜索引擎,如今的数据大爆炸时代,搜索引擎已经不仅是帮助用户从海量信息中找到结果,更是一种互联网服务.搜索引擎成为一个数据工厂,通过大数据挖掘,抽象结构化有价值的信息,加速信息流动,促使搜索为用户提供更多服务以及更高价值. 让用户对搜索结果进行筛选的时代很快就会被抛弃在时代的浪潮中,当前大数据时代研究最多的深度学习也是研究搜索引擎能够直接命中用户答案的途径之一,『所搜即所得』成为搜索引擎在大数据时代变革中的必然发展趋势. 除此之外,在大数据背景下,搜索引擎可以

知牛微课堂:大数据时代中的R编程语言

TIOBE 2014年12月份编程语言排行榜中显示, R编程语言受大数据影响,备受业界追捧,市场份额一度攀升,已到排行版12位,而去年同时间为38位, R语言有望成为今年TIOBE年度语言的候选者. R语言到底是神马东东?知牛微课堂与您一同了解下吧. R语言初窥 R语言是用于统计分析.绘图的语言和操作环境.R是属于GNU系统的一个自由.免费.源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具. R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支.可以认为R是S语言的一种实现.而

《大数据时代的历史机遇-产业变革与数据科学》读后感

这本书,帮助我初步完成了大数据探索之旅.大数据,并不是那么简单,她是一种思维方式,更是一种新的商业模式,是需要社会各界关注的大事件. 新的时代,是信息通信高度发达的时代,是信息无孔不入的时代.在具备自身核心竞争力的同时,对外分享.合作是企业生存和发展的唯一途径.经过多年互联网战国时代的厮杀,市场中逐步确立了"终端+平台+应用"的商业模式,谁能够控制终端,谁就掌握的用户入口,谁就抢得了先机.谁能够为用户提供个性化服务,谁就能够拥有客户,在长尾中赚足利润.而平台作为终端和应用的中枢,可以整

大数据时代的数据存储,非关系型数据库MongoDB(一)

爆炸式发展的NoSQL技术 在过去的很长一段时间中,关系型数据库(Relational Database Management System)一直是最主流的数据库解决方案,他运用真实世界中事物与关系来解释数据库中抽象的数据架构.然而,在信息技术爆炸式发展的今天,大数据已经成为了继云计算,物联网后新的技术革命,关系型数据库在处理大数据量时已经开始吃力,开发者只能通过不断地优化数据库来解决数据量的问题,但优化毕竟不是一个长期方案,所以人们提出了一种新的数据库解决方案来迎接大数据时代的到来——NoSQ

大数据时代不可能匿名

大数据近几年一直很火,不过隐私也成了关注点.大数据会收集人们高度隐私的数据,比如医疗记录或购物记录,再通过“分离识别”程序来匿名.如此一来,人们就不用担心个人隐私泄露了.不过事情真那么简单吗? 大数据时代的匿名化并非100% 普林斯顿的计算机科学家艾文德奈瑞 · 亚南,曾在2006年发表的一篇文章中称,在本该匿名的互联网电影数据中,Netflix用户的各种租借历史数据却能在交叉引用过程中被泄露.亚南登在7 月9日的一份报告中称,匿名化支持者们(认为匿名化可行的人)也许还没预感到当下大数据中的危险

大数据时代的数据存储,非关系型数据库MongoDB

在过去的很长一段时间中,关系型数据库(Relational Database Management System)一直是最主流的数据库解决方案,他运用真实世界中事物与关系来解释数据库中抽象的数据架构.然而,在信息技术爆炸式发展的今天,大数据已经成为了继云计算,物联网后新的技术革命,关系型数据库在处理大数据量时已经开始吃力,开发者只能通过不断地优化数据库来解决数据量的问题,但优化毕竟不是一个长期方案,所以人们提出了一种新的数据库解决方案来迎接大数据时代的到来——NoSQL(非关系型数据库). 为什

《大数据时代》简要笔记

一.大数据时代处理数据理念上的三大转变 1.要全体不要抽样(不用随机的方法,而是采用所有的数据) 2.要效率不要精确(接受数据的不精准和不完美,反而可以更好的进行预测,适用于精确度不要求那么极端的任务) 3.要相关不要因果(不一定非要知道原因,只要知道结果) 二.面对新领域和新概念应有的态度 1.努力在可以应用,可以扩展的地方应用它扩展它 2.在不能应用的地方,就停下来 三.处理技术 1.谷歌的MapReduce和开源的Hadoop平台 2.数据不需要用传统的数据库表格来整齐的排列,如NoSQL

大数据时代的技术hive:hive介绍

我最近研究了hive的相关技术,有点心得,这里和大家分享下. 首先我们要知道hive到底是做什么的.下面这几段文字很好的描述了hive的特性: 1.hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行.其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析. 2.Hive是建立在 Hadoop