ORC File文件结构
ORC File文件结构
ORC的全称是(Optimized Row Columnar),ORC文件格式是一种Hadoop生态圈中的列式存储格式,它的产生早在2013年初,最初产生自Apache Hive,用于降低Hadoop数据存储空间和加速Hive查询速度。和Parquet类似,它并不是一个单纯的列式存储格式,仍然是首先根据行组分割整个表,在每一个行组内进行按列存储。ORC文件是自描述的,它的元数据使用Protocol Buffers序列化,并且文件中的数据尽可能的压缩以降低存储空间的消耗,目前也被Spark SQL、Presto等查询引擎支持,但是Impala对于ORC目前没有支持,仍然使用Parquet作为主要的列式存储格式。2015年ORC项目被Apache项目基金会提升为Apache顶级项目。ORC具有以下一些优势:
- ORC是列式存储,有多种文件压缩方式,并且有着很高的压缩比。
- 文件是可切分(Split)的。因此,在Hive中使用ORC作为表的文件存储格式,不仅节省HDFS存储资源,查询任务的输入数据量减少,使用的MapTask也就减少了。
- 提供了多种索引,row group index、bloom filter index。
- ORC可以支持复杂的数据结构(比如Map等)
列式存储
由于OLAP查询的特点,列式存储可以提升其查询性能,但是它是如何做到的呢?这就要从列式存储的原理说起,从图1中可以看到,相对于关系数据库中通常使用的行式存储,在使用列式存储时每一列的所有元素都是顺序存储的。由此特点可以给查询带来如下的优化:
- 查询的时候不需要扫描全部的数据,而只需要读取每次查询涉及的列,这样可以将I/O消耗降低N倍,另外可以保存每一列的统计信息(min、max、sum等),实现部分的谓词下推。
- 由于每一列的成员都是同构的,可以针对不同的数据类型使用更高效的数据压缩算法,进一步减小I/O。
- 由于每一列的成员的同构性,可以使用更加适合CPU pipeline的编码方式,减小CPU的缓存失效。
ORC File文件结构相关推荐
- Hive存储格式之ORC File详解,什么是ORC File
文章目录 概述 文件存储结构 Stripe Index Data Row Data Stripe Footer 两个补充名词 Row Group Stream File Footer 条纹信息 列统计 ...
- MapReduce基础开发之十读写ORC File
1.ORC File Orc是Hive特有的一种列式存储的文件格式,它有着非常高的压缩比和读取效率,因此很快取代了之前的RCFile,成为Hive中非常常用的一种文件格式. 2.编译ORC Jar包 ...
- sqoop从orc文件到oracle,Sqoop import as OrC file
问题 Is there any option in sqoop to import data from RDMS and store it as ORC file format in HDFS? Al ...
- hive报错整理之Malformed ORC file 、Invalid postscript.
Caused by: java.io.IOException: Malformed ORC file 将本地文件的数据加载到hive的ORC格式表时,出现以下报错: Diagnostic Messag ...
- Presto读Hive报错: Malformed ORC file. Cannot read SQL type ‘tinyint‘ from ORC stream...
向社区提了个Issue: Malformed ORC file. Cannot read SQL type 'boolean' from ORC stream '.illegal' of type I ...
- 【Hive】Hive查询报错 Malformed ORC file、Invalid postscript、serious problem
报错1: [2020-09-01 20:27:48] hive:Failed with exception java.io.IOException:java.lang.RuntimeException ...
- 大数据:Hive - ORC 文件存储格式
一.ORC File文件结构 ORC的全称是(Optimized Row Columnar),ORC文件格式是一种Hadoop生态圈中的列式存储格式,它的产生早在2013年初,最初产生自Apache ...
- Hive - ORC 文件存储格式详细解析
一.ORC File文件结构 ORC的全称是(Optimized Row Columnar),ORC文件格式是一种Hadoop生态圈中的列式存储格式,它的产生早在2013年初,最初产生自Apache ...
- 两种列式存储格式:Parquet和ORC
背景 随着大数据时代的到来,越来越多的数据流向了Hadoop生态圈,同时对于能够快速的从TB甚至PB级别的数据中获取有价值的数据对于一个产品和公司来说更加重要,在Hadoop生态圈的快速发展过程中,涌 ...
- RC ORC Parquet之大数据文件存储格式的一哥之争
背 景 大数据如火如荼的发展中,以hadoop集群为基础的数据存储和计算框架也日新月异的精进,而如何减少存储空间又提升计算效率,一直是大数据集群老生常谈的问题,今天就一起聊聊最基本的大数据文件存储 ...
最新文章
- 【云栖大会夺宝攻略】在线PK、打卡领奖、抢offer,开发者专属玩法在这里
- win10硬盘修复工具使用教程
- python爬虫源码项目_32个Python爬虫实战项目,满足你的项目慌(带源码)
- Java 导出 Excel 文件
- SAP License:CKMLCP运行物料帐时单个物料冲突无法运行
- linux下编辑文件实验,Linux上最常用的文本编辑器vi/vim使用教程
- mysql优化概述2
- 能力提升综合题单 Part 8.4 生成树Part 8.5 拓扑排序Part 8.6 差分约束
- 手机APP的常见功能测试用例
- 第十一届蓝桥杯大赛软件类省赛第二场 C/C++ 大学 B 组 附蓝桥杯官网网址
- WDM驱动inf模板
- python excel 饼图 简书_Matplotlib-绘制饼图
- Jim exclaimed, Damn man, this isn’t funny cheap air max 90
- GNU Make 使用手册!
- 多元线性回归分析spss结果解读_多元线性回归分析理论详解及SPSS结果分析
- 时序逻辑电路设计方法和步骤
- MATLAB feof和~feof函数用法
- 聚集索引和非聚集索引的区别?
- 数字电路与C语言基础
- java con_java安全学习-Code-Breaking Puzzles-javacon详细分析
热门文章
- oracle数据库使用odbc导出到access失败
- 零跑C-more收获更多期待,而零跑S01还在追求更多的订单 | 2019 上海车展...
- cvc-complex-type.2.3: Element 'beans' cannot have character [children] 博客分类: Spring
- ios 8 适配须知
- php laravel 相关收集
- 复制当前地址到系统剪贴板
- Spring Boot入门(1)-第一个Spring Boot应用
- java中ImageIcon路径问题
- String的replaceAll方法中的正则表达式用法
- 温故知新----css布局