Hive文件存储格式

作者: 心_的方向 | 来源:发表于2016-11-07 21:54 被阅读2544次

列式存储和行式存储

5.png

上图左边为逻辑表,右边第一个为行式存储,第二个为列式存储。

** 行存储的特点: **查询满足条件的一整行数据的时候,列存储则需要去每个聚集的字段找到对应的每个列的值,行存储只需要找到其中一个值,其余的值都在相邻地方,所以此时行存储查询的速度更快。
** 列存储的特点: **因为每个字段的数据聚集存储,在查询只需要少数几个字段的时候,能大大减少读取的数据量;每个字段的数据类型一定是相同的,列式存储可以针对性的设计更好的设计压缩算法。

Hive中常用的存储格式

  1. textfile
    textfile为默认格式,存储方式为行存储。
  2. ORCFile
    hive/spark都支持这种存储格式,它存储的方式是采用数据按照行分块,每个块按照列存储,其中每个块都存储有一个索引。特点是数据压缩率非常高。


    6.png
  3. Parquet
    Parquet也是一种行式存储,同时具有很好的压缩性能;同时可以减少大量的表扫描和反序列化的时间。

根据不同的格式创建表

  1. textfile
    创建表
create table textfile(
...
...
...
)
row format delimited fields terminated by '\t'
stored as textfile;
insert into table textfile select * from source_log;

查看占用的磁盘空间


7.png
  1. orc
    创建表
create table orc(
...
...
...
)
row format delimited fields terminated by '\t'
stored as orc;
insert into table orc select * from source_log;

查看占用的磁盘空间


8.png
  1. parquet
    创建表
create table parquet(
...
...
...
)
row format delimited fields terminated by '\t'
stored as parquet;
insert into table parquet select * from source_log;

查看占用的磁盘空间


9.png

磁盘空间占用大小比较
orc(7.8M)<parquet(38.2M)<textfile(53.3M)

查询语句的比较

  1. textfile表
    hive (count_log)> select id from textfile limit 30;
    10.png
  2. orc表
    hive (count_log)> select id from orc limit 30;
    11.png
  3. parquet表
    hive (count_log)> select id from parquet limit 30;
12.png

把设置存储格式和压缩结合使用,可以最大的减少存储空间。

相关文章

  • Hive文件存储格式

    文件存储格式 Hive支持的存储数据的格式主要有:TEXTFILE(行存储)、SEQUENCEFILE(行存储)、...

  • Hive文件存储格式

    列式存储和行式存储 上图左边为逻辑表,右边第一个为行式存储,第二个为列式存储。 ** 行存储的特点: **查询满足...

  • Hive 主流文件存储格式对比

    Hive 主流文件存储格式对比 1、存储文件的压缩比测试 1.1 测试数据 1.2 TextFile 创建表,存储...

  • (三)Hive的文件存储格式

    hive文件存储格式包括以下几类: TEXTFILE SEQUENCEFILE RCFILE 自定义格式 其中TE...

  • 大数据开发之Hive优化篇5-使用ORC文件格式优化Hive

    备注:Hive 版本 2.1.1 如果使用Hive作为大数据仓库,强烈建议主要使用ORC文件格式作为表的存储格式 ...

  • Presto Hive连接器

    概览 Hive连接器允许查询存储在Hive数据仓库中的数据。Hive是由三个部分组成。 各种格式的数据文件通常存储...

  • Hive文件存储格式详解

    0. 行式存储和列式存储 Hive中常用的存储格式有TEXTFILE 、SEQUENCEFILE、AVRO、RCF...

  • Hive调优之数据篇

    数据文件的性能优化包含文件格式、压缩方式以及数据存储等三个方面。 文件格式Hive 支持TEXT FILE, SE...

  • Hive学习笔记(4)存储格式

    Hive从两个维度对表的存储进行管理:“行格式”(row format)和“文件格式”(file format)。...

  • hive存储json格式文件

    hive从0.12版本以后就开始自身支持json文件的格式了 1.文件格式 下面是测试用的文件预览格式,我将其存储...

网友评论

  • 1d346cdd4a27:既然写博客,就要严谨仔细,不要犯低级错误:“Parquet也是一种行式存储”。
    Parquet是列式存储!
    心_的方向:@bauer 感谢指正。

本文标题:Hive文件存储格式

本文链接:https://www.haomeiwen.com/subject/nkwouttx.html