小鹿学院 > SEM营销 > 资讯正文
大数据时代再进化,谷歌Dremel要把hadoop淘汰的东西
2018-01-22 21:14 小鹿推广

小鹿系列竞价软件覆盖百度、360、搜狗、神马四大搜索平台,采用独创的竞价算法,智能精准出价,一键批量查排名,根据关键词位置实时调整出价,降低出价虚高,稳定排名,节省企业预算。

小鹿竞价软件专题介绍:https://www.xiaolutg.com/bidding/fengchao?ref=menu

专注于大型数据中心规模软件平台的加利福尼亚伯克利分校计算机科学教授Armando Fox表示“如果你事先告诉我Dremel可以做什么,那么我不会相信你可以把它开发出来”。

http://sergey.melnix.com/pub/melnik_VLDB10.pdf

Dremel的基本概念是按列来分割数据,能把树形结构的数据按列分割,而不是只能处理简单的二维表。文章里面用了不少篇幅来描述他们怎么把树形结构的数据变成数据列。这个按列处理数据是他们性能提高的关键。对比bigtable,都是分而治之的方式,把一台机器存不下的表分割为子表,不过bigtable是按行分,Dremel是按列再分。

按列分割数据以后,做查询就方便很多,因为查询表达式基本上是对列里面数据的计算,把数据列分别存储,就实现了数据和计算在计算节点级别的局部性 – 就是说单个节点上面CPU和数据离的近了,计算起来快;整体来说可以把计算并行的分布到多个节点去,他们提到用了4000个节点并行计算。当然把数据分割也是有代价的,因为最后经常要把这些列再组合成记录。他们也承认,组合数据比较耗时。我当时看演示的时候,也发现如果最后的查询结果是scalar数据,比如count(*)这种,就飞快,做做统计产生图标那就是瞬间的事;如果是返回某些记录,就比较慢。

马克·奥尔森管理的一家公司专注于当前世界上最火的软件。他是Clodera公司的CEO,这家硅谷初创公司经营着开源软件平台Hadoop,它的基础,正是谷歌赖以统治网络(搜索)世界的技术。

外界预期到2016年,将由超过8.13亿美元的软件运行在Hadoop上。但是现在就连奥尔森自己都说这个消息过时了。

Hadoop起源自谷歌在2003年底和2004年发表的两篇学术论文。第一篇介绍了谷歌的文件系统,将海量的数据保存在上千台普通廉价的PC上;第二篇论文介绍了MapReduce算法,将所有服务器中的处理器有效的利用起来计算(保存在谷歌文件系统中的海量)数据并得到想要的结果。八年之后,Hadoop得到了广泛的使用,(应用范围)从数据分析到各种这样的数值计算任务等等。但是谷歌并没有停下自己的脚步。

从2009年开始,搜索巨人开始使用新技术替换现有的GFS和MapReduce,而麦克·奥尔森会告诉你这些技术将是未来的发展方向。“如果你想知道未来的大规模、高性能数据处理架构是什么样子的,我的建议是现在就去读谷歌的研究论文,”奥尔森在最近的一次专题讨论会中告诉连线杂志。

在Hadoop兴起之后,谷歌发表了三篇值得注意的文章,内容关于支持谷歌大规模网页操作的底层架构。一篇详细介绍了Caffeine,谷歌网络搜索引擎索引构建平台。第二篇关于Pregel,一个用于映射大量线上信息之间关系的“图数据库”。最吸引人的是一篇介绍Dremel工具的文章。

“如果你之前告诉我Dremel声称能做到的功能,我不太会相信你会实现它,”加州大学伯克利分校计算机系教授Armando Fox说。Fox教授专门研究数据中心级的软件平台。

Dremel是一种分析数据的(新)方法。它运行在上千台服务器上,让你能够在大数据上——例如网页文档集合、数字图书馆、百万规模的垃圾信息等——执行“查询”操作。这有点类似于过去传统的数据库上执行SQL操作,过去几十年SQL(结构化查询语言)得到了广泛的应用。比如说你有一个数字图书的集合,那么你可以自己建立一个查询,返回给你所有作者的名单,或者涉及某个特定领域的作者的列表。

“这是一个类似SQL风格的语言,让你能够在不编程的前提下轻松的定义(你需要的)特定的查询或重复的查询。你只需要把查询(命令)输入命令行,”管理谷歌基础架构的UrsH?lzle说。

(与SQL的)不同之处在于Dremal在极快的时间内处理像网页集合这样规模的数据。谷歌的论文中给出的数据说你能够在几秒钟之内查询数PB的数据(PB等于一百万GB)。

Hadoop已经提供了相应工具,能够在大数据集上运行类SQL查询。Hadoop的姊妹项目asPig和Hive就是专门为这个目的而建立。但是Hadoop有一个延迟时间。它是一个用来进行“批处理”的平台。你扔给它一个任务,它需要几分钟或几个小时来运行,之后你才能拿到结果。 Dremel,是专门针对即时查询的。

“Dremel能够在大数据上同时执行多个查询操作。以前则需要写一系列的MapReduce任务,运行时间也比Dremel多得多。Dremel在一个PB级别的数据上进行查询只需要三秒钟。” UrsH?lzle援引谷歌Dremel论文(中的数据)说。

Armando Fox表示这是史无前例的。Hadoop是“大数据”时代的杰作,用来构建分析超大规模信息的工具。但是现在的大数据工具往往存在一些缺点。你不能指望在大数据(工具)上的查询能够达到传统数据库或商业智能工具的精度和速度。但是Fox说Dremel将能做到这一点。

“他们(的工作)既能进行大规模的分析有能够深入的查看数据,这是我以前觉得不可能的事情,”他说,“能够处理的数据的规模和处理数据的时间让人印象深刻。以前人们也开发过不同的大数据系统,但是还没有哪个系统能够像Dremel一样能够如此快速的处理如此多的数据。”

“一般来说,(速度和规模)你只能二选一。侧重这边就要放弃那边。但是Dremel做到了两者兼顾。”

从论文中看出早在2006年这个系统就已经在谷歌内部使用了,“数千个”谷歌员工用它来分析从软件崩溃报告、各种谷歌服务数据到数据中心内部硬盘行为数据等所有事情。这个系统经常在数十台甚至数千台机器上运行。

Hadoop的成功是无可否认的,但是Clodera CEO迈克·奥尔森觉得(跟谷歌相比)开发这个平台的公司和开发人员有些落后了。在Dremel上我们看到了同样的事情。谷歌在2010年发表了Dremel,但是我们仍然需要很长的时间才能看到由第三方开发人员仿制的系统出来。一个来自以色列的工程团队正在构造一个叫做OpenDremel的类似系统,虽然开发人员之一David Gruzman说他们中断了很长时间,现在才开始编码。

迈克·米勒是华盛顿大学粒子物理学合聘教授,同时也是Cloudant公司首席科学家。这家公司需要解决的数据问题与谷歌这些年遇到的问题有很多相似点。我们很惊讶一家旨在逆向Dremel的初创公司得到了若干知名风投的支持。

即使你不是谷歌员工,如今可以使用Dremel了。谷歌现在提供了一个基于Dremel的网页服务BigQuery。你可以通过网页API使用这个平台。基本上只要上传了你的数据就可以利用谷歌的内部架构来执行查询了。

这是谷歌提供的越来越多的云服务的一部分。起初谷歌允许你通过GAE在谷歌的架构上编译、运行整个应用程序,而现在增加了对包括BigQuery和Google Compute Engine(用于即时访问虚拟服务器)在内的大量工具。

谷歌走在了世界前列。而他正在促进世界上其它的公司进步。

取自译言小编整理

卧龙

百度

点睛

搜狗

<< 上一篇

私有adexchange型成的必然性

下一篇 >>

大数据时代意见领袖专栏-聚胜万合CEO-杨炯纬–电商营销的理性回归

相关资讯

关注公众号 获取更多干货资讯

400-998-8026