当前位置: 首页 > news >正文

Hive 常用存储、压缩格式

1. Hive常用的存储格式

TEXTFI
textfile为默认存储格式
存储方式:行存储
磁盘开销大 数据解析开销大
压缩的text文件 hive 无法进行合拆分

SEQUENCEFILE
sequencefile二进制文件,以<key,value>的形式序列到文件中
存储方式:行存储
可以分割、压缩
一般选择block压缩
优势是和Hadoop api中的mapfile相互兼容的

RCFILE
存储方式:数据按行分块 每块按照列存储
压缩快 快速列存取
读记录尽量涉及到的block最少
读取需要的列只需要读取每个row group的头部定义
读取全量数据的操作 性能可能比sequence没有明显的优势

ORC
存储方式:数据按行分块,每块按照列存储
压缩快 压缩按照列存取
效率比rcfile高,是rcfile的改良版本

Apache ORC
ORC(OptimizedRC File)存储源自于RC(RecordColumnar File)这种存储格式,RC是一种列式存储引擎,
对schema演化(修改schema需要重新生成数据)支持较差,而ORC是对RC改进,但它仍对
schema演化支持较差,
主要是在压缩编码,查询性能方面做了优化。RC/ORC最初是在Hive中得到使用,最后发展势头不错,独立成一个单独的项目。

PARQUET

Apache Parquet
源自于google Dremel系统(可下载论文参阅),Parquet相当于Google Dremel中的数据存储引擎,
而Apache顶级开源项目Drill正是Dremel的开源实现。
Apache Parquet 最初的设计动机是存储嵌套式数据,比如Protocolbuffer,thrift,json等,将这类数据存储成列式格式,
以方便对其高效压缩和编码,且使用更少的IO操作取出需要的数据,
这也是Parquet相比于ORC的优势,
它能够透明地将Protobuf和thrift类型的数据进行列式存储,在Protobuf和thrift被广泛使用的今天,与parquet进行集成,
是一件非容易和自然的事情。 
除了上述优势外,相比于ORC, Parquet没有太多其他可圈可点的地方,
比如它不支持update操作(数据写成后不可修改),不支持ACID等。

Avro格式
自定义格式

2. Hive压缩算法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/228079.html

相关文章:

  • 搞懂它,就可以把结构体玩活了~
  • 基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖(四)
  • dcat admin 各种问题
  • 数据结构与算法(二)动态规划(Java)
  • 颜值实力“C位出道”:起亚EV6综合实力究竟怎么样?
  • 继承和多态_Java零基础手把手保姆级教程(超详细)
  • AI:85-基于深度学习的自然场景生成与渲染
  • Windows电脑训练 RT-DETR 改进算法 (Ultralytics) 教程,改进RTDETR算法(包括使用训练、验证、推理教程)
  • flask框架报错解决方法
  • Ubuntu18.04 安装docker教程
  • 深入理解Git
  • Leetcode_203.移除链表元素—C语言
  • 虹科方案 | 汽车电子电气架构设计仿真解决方案
  • Java6种单例模式写法
  • Direct3D拾取
  • 大洋钻探系列之二IODP 342航次是干什么的?(上)
  • 离散时间系统模型
  • Nginx学习(在 Docker 中使用 Nginx)
  • 【Java】集合(一)单列集合List
  • 实战 | 基于卷积神经网络的蘑菇识别微信小程序
  • 如何选择共享wifi项目服务商,需要注意哪些?
  • ubuntu20.04 MYNTEYE S 相机运行与标定记录
  • 有效降低数据库存储成本方案与实践 | 京东云技术团队
  • 分布式数据库Schema 变更 in F1 TiDB
  • 图形库篇 | EasyX | 图像处理
  • AWTK UI 自动化测试工具发布
  • Java后端开发——JDBC入门实验
  • LCA
  • ts学习02-数据类型
  • javaSE的发展历史以及openjdk和oracleJdk