Google Dremel vs. Apache Hadoop
Naresh Kumar在介绍两者之间的区别之前,首先针对Google Dremel进行简单的描述:
什么是Google Dremel?
Google Dremel是个可扩展的、交互式的即时查询系统,专注于只读嵌套(nested)数据的分析。通过集合不同层次的执行树和柱状的数据布局,他能够在几秒内完成在万亿张表上的聚合查询。系统可以扩展到成千上万的CPU上,满足Google上万用户操作PB及的数据。
Apache Hadoop vs Google Dremel:两者之间的不同
Dremel是个数据分析工具,经专门设计用于完成大规模查询结构化数据集(如日志和事件文件)。它支持类SQL语法,区别在于它是只读的。不支持修改或者建立功能,也没有表索引。数据被列式存储,这样有助于提升查询的速度。Google的BigQuery就是Dremel通过RESTful API的一种实现。
Hadoop(MapReduce的一种开源实现)集合了“Hive”数据仓库软件,同样允许使用SQL语句对大量的数据集进行数据分析。Hive本质上是把查询转换成MapReduce运算。对比使用ColumIO格式,Hive则是使用表索引的思想去优化查询。
Hadoop更多的则是用于批处理,这就意味着数据是运行在你已经拥有的数据集上。有数据流入时,流引擎会进行处理。“流”和“实时”通常被互换使用,这也是导致Dremel和Drill混淆的原因,通常都会把它们归类成延时。
值得注意的是Google只是打算将Dremel作为MapReduce的一种补充,而不是替换。通过论文也可以得知,Dremel被频繁的用于分析MapReduce的结果或者是作为大规模计算的测试。Dremel可以做那些通常需要一系列MapReduce才可以完成的查询,但是花费的时间只是使用MapReduce的一小部分。如前所述,Dremel从速度上完全超越MapReduce。
Google Dremel vs Apache Drill
Apache Drill更像是Google Drill的开原版本。OpenDremel,另一个创建Dremel开源版本的项目。当然还有一些其他支持大数据快速查询的项目,比如:Apache CouchDB和Cloudant的演变版本BigCouch。
其他一些大数据分析工具和技术
1. Storm —— Backtype开发并被Twitter开源。
2. Apache S4 —— Yahoo!开源。
而流引擎就是这些实时大数据处理系统(比如Storm和S4)与Dremel的最大区别,当然Dremel是专门针对查询设计。
相关文章
- 台积电交卷:已向美国商务部提供芯片供应信息,但未披露特定数据
- 计算走向商业化的趋势加强,数据存储成为必争之地
- MySQL数据库,详解索引原理(四)
- 一周趣评:个人信息保护法实施;脸书关闭人脸识别系统
- 第1节:感知机perceptron原理与numpy复现
- 戴尔分拆价值640亿美元的VMware以减轻债务负担
- [Python从零到壹] 十一.数据分析之Numpy、Pandas、Matplotlib和Sklearn入门知识万字详解
- 算力≠智慧!MIT教授「意识来源」新理论:人类认知与计算没关系
- 【小知识】使用串口8bit,7bit和6bit数据格式的奇偶校验问题
- 【STM32H7教程】第93章 STM32H7的SPI总线应用之驱动ADS1256(8通道24bit ADC, 增益可编程)
- 模型泛化不必随机训练全批量GD媲美SGD,网友:计算成本负担不起
- 比超级计算机快亿亿亿倍!中科大成功研制113个光子的“九章二号”量子计算机原型
- 比超级计算机快千万倍 我国量子计算研究获重要进展
- 中国如何赢得新一轮超算竞赛?关键在向数据密集型超算转变
- 400倍加速,PolarDB HTAP实时数据分析技术解密
- 台积电被逼服软!11月8日前将提交所有机密数据
- 阿里OceanBase GitHub点赞送礼引争议,CTO道歉,贾扬清、李沐讨论
- 黑客把你家网线作“天线”,读取电磁信号就能偷走数据
- 云安全漏洞事件频发,我们能从中学到什么?
- 为什么微服务要有独立数据库