前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >超越 MapReduce ,要比它更快!

超越 MapReduce ,要比它更快!

作者头像
哒呵呵
发布2020-03-25 17:50:11
4290
发布2020-03-25 17:50:11
举报
文章被收录于专栏:鸿的学习笔记鸿的学习笔记

前面介绍了大数据领域里的两个主流引擎:MapReduce 和 Spark 。它们开创了历史,使得世界进入了大数据时代,让很多公司能够处理庞大的数据,并从中找到更多的有价值的东西。所以,Hadoop 刚开始兴起时,大家都兴奋于我终于能够处理这么多数据了,到后面,Hive 被 Facebook 一群人写出来的时候,大家又不用写那么复杂的 MapReduce 程序了,回到了熟悉的 SQL 的怀抱。

这时,一切看起来那么完美,又能处理大数据,而且还能用 SQL 处理大数据,嗯,似乎走到了终点。但是人的欲望是永远不会满足的。众所周知,MapReduce 程序是出了名的慢,我记得之前处理几个 GB 的数据,要几分钟,处理几个 MB 的数据也要几分钟,反正至少等个几分钟就是了。

于是大家很不满了,我就处理个几GB的数据,又不是几十GB、TB、PB,你还要给我等几分钟,十几分钟,烦死了。要是时间能缩短到几秒钟就好了。无论是在搞出 MapReduce 的谷歌的内部还是外部,总有人受够了 MapReduce 的慢。2006 年的时候,在Google的Kirkland的办公室,一群新人在远离总部的地方捣鼓出了 Dremel 。然后经过内部的竞争,2010 年谷歌发表了 Dremel 的论文,在论文中,Dremel 号称在中小数量级上,Dremel 能够提供比 MapReduce 更快的查询速度。然后,Dremel 成为了 Google 的 BigQuery 的后端计算引擎。

至此交互式查询的大门被打开了,翻开了新的历史篇章。

对于 Dremel 而言,它首先贡献了一套新的数据模型,这个数据模型类似于 JSON ,可以把嵌套数据变成类似二维表的数据,其次 Dremel 使用的数据存储格式采用了列式存储,常见的列式存储该有的东西都具备,比如向量化等等。这些东西组合在一起变成了开源项目 Apache Parquet 。这是在数据存储方面;

在计算方面,Dremel 使用了 MPP 架构,把数据处理的流程变成一个个的 Pipeline ,当然使用这个方式最大的好处就是可以充分使用内存,容错性也不错。搞出这些东西以后呢,Cloudera 就模仿着搞出了 Impala 、MapR 做出了 Apache Drill 。此处暂且不表,下一篇文章再聊。

聊聊我对 Dremel 的看法。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 鸿的笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档