前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hive存储格式简单介绍

Hive存储格式简单介绍

原创
作者头像
用户7459214
修改2020-06-15 10:40:12
2.5K0
修改2020-06-15 10:40:12
举报
文章被收录于专栏:AI智慧空间AI智慧空间

一、 Hive文件存储格式

 Hive支持的存储格式有: textfile、sequencefile、orc和parquet这几种格式。Hive 的存储方式有列式存储和行式存储。 textfile和sequencefile的存储格式是给予行存储的;而orc和parquet是基于列存储的(实质上也不是完全的列存储。

关于行式存储和列式存储: 

行存储的特点: 查询满足条件的一整行数据的时候, 列存储则需要去每个聚集的字段找到对应的每个列的值,行存储只需要找到其中一个值,其余的值都在相邻地方,所以此时行存储查询的速度更快。

列存储的特点: 因为每个字段的数据聚集存储,在查询只需要少数几个字段的时候,能大大减少读取的数据量;每个字段的数据类型一定是相同的,列式存储可以针对性的设计更好的设计压缩算法。

textfile 是hive的默认格式,因为对于这种格式,数据不做压缩,所以对磁盘容量和数据的解析都是一个挑战。当然也可以结合压缩算法使用,比如 gzip、bzip2等。压缩的text文件hive无法进行合并或拆分。

sequencefile是一种二进制文件,以K-V的形式序列化到文件里,这种文件格式是可压缩和可分割的。

orc是hive 0.11版本里引入的一种新的存储格式。这种格式会将数据按行来进行分块,每个块按列进行存储。压缩是非常快的。

parquet是面向分析性业务的列式存储格式,是以二进制方式进行存储,所以不能直接进行读取。

sequencefile行存储

  1. 存储空间的消耗最大
  2. 压缩的文件可以分割和合并
  3. 查询效率高,但需要通过text文件转化来加载

orc列存储   1.节省存储空间    2.查询效率高    3.压缩快parquet列存储

  1. 压缩效率高 
  2. 查询效率高
  3. 支持Impala查询引擎

三、如何选择hive的存储格式

hive 表的数据存储格式建议选择orc或者parquet,压缩方式建议选snappy。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档