红联Linux门户
Linux帮助

Shark 0.2发布,数据仓库系统

发布时间:2012-10-23 11:15:50来源:红联作者:empast
Shark 0.2是Shark的一个正式发布版本,自从原来的0.1版本原型发布,新的版本带来了新的特征,性能提升和稳定性

主要变更如下:

Hive兼容性

Shark现在和Hive 0.9兼容,引入了很多新的特性,在0.7之上
完全支持Hive的UDFs和UDAFs
Shark 0.2也支持将资源文件(例如:jars)分布到Slaves上,使用Hive的ADD FILE命令
简化的部署

很大程度上简化了部署的流程,例如:本地运行Shark包含了一个5分钟内在本地启动Shark 0.2的指引
除了运行在Mesos上外,Shark现在也支持Spark的单一部署模式,可以让你快速的启动一个集群,而不需要安装一个外部的集群管理器。单一模式只需要Java在每台机器上部署,并且部署Spark。
Hive Thrift服务器

Yahoo的Ram Sriharsh贡献了一个Patch,使得Shark的Thrift服务器,和Hive的Thrift服务器兼容
Thrift服务器启动了一个持续运行的服务器,支持多个客户端连接到它上面。这些客户端可以访问相同的仓库,使用相同的一套缓存表集
为了启动服务器,在默认的10000端口,只需要输入:
$ bin/shark --service sharkserver

查询执行和性能提升

Map端的聚合现在默认打开,如果没有足够的Reduce,Shark会默认关闭map端的聚合,用户再也不必显式的设置:hive.map.aggr
重写了Shark的join和group实现代码,对于有大量唯一Key的查询,join和group的性能提升了2倍
Spark兼容性

Shark 0.2需要Spark 0.6,从而可以利用新版本带来的新特性和性能提升
其它

如果你觉得_cached是一种hacky的方式,来指示一个表应该在内存中被缓存,shark 0.2支持在创建表的时候,使用表的属性,指定一个布尔标志来标识是否缓存。

主页:https://github.com/amplab/shark

来自:开源中国社区
文章评论

共有 0 条评论