ORC在Hive中如何应用
这篇文章主要介绍了ORC在Hive中如何应用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
我们提供的服务有:网站设计、成都网站建设、微信公众号开发、网站优化、网站认证、鄠邑ssl等。为数千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的鄠邑网站制作公司
ORC文件不仅仅是一种列式文件存储格式,最重要的是有着很高的压缩比,并且对于MapReduce来说是可切分(Split)的。因此,在Hive中使用ORC作为表的文件存储格式,不仅可以很大程度的节省HDFS存储资源,而且对数据的查询和处理性能有着非常大的提升,因为 ORC 较其他文件格式压缩比高,查询任务的输入数据量减少,使用的 Task 也就减少了。
对性能提升的另一个方面是通过在ORC文件中为每一个字段建立一个轻量级的索引,来判定一个文件中是否满足WHERE子句中的过滤条件。比如:当执行HQL语句”SELECT COUNT(1) FROM xxx WHERE a=1”时候,先从ORC文件的metadata中读取索引信息,快速定位到id=0所在的offsets,如果从索引信息中没有发现id=0的信息,则直接跳过该文件。
在 Hive 中执行如下语句,新建 hive 表 xxx, 并指定存储格式为 ORC。
CREATE TABLE xxx (
name STRING,
color STRING
) STORED AS ORC;
如果,某个表不是 ORC 格式存储的,现在想要修改成 ORC 格式的,可以执行下面的语句:
alter table xxx set fileformat orc;
从 Hive 0.14 版本开始,可以执行下面的语句进行 ORC 小文件的合并。合并发生在 stripe 层面,所以不会发生重新解压编码。
alter table xxx [PARTITION partition_spec] CONCATENATE;
如果想要查看 ORC 文件的信息,可以执行如下语句,其中 path 为 hdfs 路径。
hive --orcfiledump
从 Hive 1.1 开始,如果想要查看 ORC 的数据内容,可以执行如下语句:
hive --orcfiledump -d
感谢你能够认真阅读完这篇文章,希望小编分享的“ORC在Hive中如何应用”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!
分享文章:ORC在Hive中如何应用
网页链接:http://myzitong.com/article/joohhh.html