内容来自Reynold Xin
Berkeley的博士,此人领导了Shark的开发(在加州伯克利分校AMP实验室)。
本文只做翻译,不对两个系统的优劣做评价。
总体上
Shark扩展了Apache Hive,大大加快在内存和磁盘上的查询。而Impala是企业级数据仓库系统, 可以很好地使用Hive/ HDFS,从架构层来说,类似于传统的并行数据库。这两个系统有着很多共同的目标,但也有很大差异。
与现有系统的兼容性
Shark直接建立在Apache/Hive代码库上,所以它自然支持几乎所有Hive特点。它支持现有的Hive SQL语言,Hive数据格式(SerDes),用户自定义函数(UDF),调用外部脚本查询。因为Impala使用自定义的C++运行,它不支持Hive UDF。这两个系统将会与许多BI工具整合,这一直是Impala的主要目标。Shark正在被用于一些BI工具,如Tableau,不过这并没有被探索更多。
内存中的数据处理
Shark允许用户显式地加载在内存中的数据,以加快查询处理,其内存使用有效率的,压缩的面向列的格式。Impala还没有提供在内存中的存储。
容错
Shark被设计为支持短期和长时间运行的查询。它可以从查询故障恢复(感谢底层Spark引擎)。Impala目前是更侧重于短查询,不容错(如果节点发生故障,查询必须重新启动,对短查询来说这无疑是可以接受的)。
性能
做全面的比较太早了点。Shark和Impala都报告比Hive快10-100倍,但这都依赖具体情况和系统负载。两个项目也都在未来6个月内会做重要优化。以我们的经验来看,Sharkr当前版本,如果是内存的数据一般比Hive快100倍,如果是磁盘上的数据一般快5-10倍,这取决于查询(带关联连接的查询,能比Hive快很多)。
目标用户
在我们的理解中,Impala是相当专注于传统企业客户和OLAP和数据仓库工作负载。Shark支持传统OLAP,但也投入了精力,以支持更复杂的Hive使用(如UDF),非结构化数据处理(如ETL),机器学习等先进的分析(通过集成Spark)。Shark的长期目标是有一个统一的系统,既支持SQL也支持高级分析(机器学习,统计等等)。
开发语言
Shark是用Java和Scala写的,运行在JVM上。Impala是用c++写的。Impala会将查询编译成LLVM(底层虚拟机)中间表示法,它可以由即时编译器做进一步优化。Shark查询被编译成JVM字节码。
开放源码
这两个系统都是开源(Apache许可)。Shark开始于加州大学伯克利分校,已经从公司如雅虎接受了重大贡献资助。Impala是在Cloudera开发的,并于最近发布。
分享到:
相关推荐
hadoop权威指南代码 (Hadoop: The Definitive Guide code) http://www.hadoopbook.com
Hadoop: The Definitive Guide is a comprehensive resource for using Hadoop to build reliable, scalable, distributed systems. Programmers will find details for analyzing large datasets with Hadoop, and...
Hadoop databases: Hive, Impala, Spark, Presto For ORACLE DBAs
"Data Analytics with Hadoop: An Introduction for Data Scientists" ISBN: 1491913703 | 2016 | PDF | 288 pages | 7 MB Ready to use statistical and machine-learning techniques across large data sets? ...
With this digital Early Release edition of Hadoop: The Definitive Guide, you get the entire book bundle in its earliest form – the author’s raw and unedited content – so you can take advantage of ...
[Hadoop权威指南(第2版)].(Hadoop:The.Definitive.Guide).Tom.White.文字版.pdf
Hadoop: The Definitive Guide, 4th Edition Get ready to unlock the power of your data. With the fourth edition of this comprehensive guide, you’ll learn how to build and maintain reliable, scalable,...
Hadoop的权威指南 Hadoop: The Definitive Guide 。里面有两个pdf的压缩包,中英两版本都有,欢迎查阅
资源名称:云计算Hadoop:快速部署Hadoop集群内容简介: 近来云计算越来越热门了,云计算已经被看作IT业的新趋势。云计算可以粗略地定义为使用自己环境之外的某一服务提供的可伸缩计算资源,并按使用量付费。可以...
Maven坐标:org.apache.hadoop:hadoop-mapreduce-client-common:2.6.5; 标签:apache、mapreduce、common、client、hadoop、jar包、java、API文档、中英对照版; 使用方法:解压翻译后的API文档,用浏览器打开...
实战Hadoop:开启通向云计算的捷径
Hadoop 权威指南第四版,Hadoop: The Definitive Guide 4th 英文原版,内有 pdf 注释勾划,不喜欢的朋友使用 Adobe reader 删除即可
Developer Training for Apache Spark and Hadoop:Hands-On Exercises
hadoop2.7汇总:新增功能最新编译64位安装、源码包、API、eclipse插件下载
实战Hadoop:开启通向云计算的捷径(刘鹏) 高清完整中文版PDF下载
Apache Hadoop YARN:Moving beyond MapReduce and Batch Processing with Apach 2 【yarn权威指南】
Spring Data for Apache Hadoop API。 Spring Data for Apache Hadoop 开发文档
Chapter 4 covers the fundamentals of I/O in Hadoop: data integrity, compression, serialization, and file-based data structures. The next four chapters cover MapReduce in depth. Chapter 5 goes through ...
Apache Hadoop十周岁:展望前方.pdf
Maven坐标:org.apache.hadoop:hadoop-mapreduce-client-core:2.5.1; 标签:core、apache、mapreduce、client、hadoop、jar包、java、API文档、中文版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html...