Apache Parquet
所属分类 bigdata
浏览量 1289
Apache Parquet is a columnar storage format 面向分析型业务
由Twitter和Cloudera合作开发,2015年5月从Apache的孵化器里毕业成为Apache顶级项目
简单数据类型 复杂的嵌套类型
HDFS 大数据文件系统的事实标准
Parquet 大数据存储格式的事实标准
Google Dremel 使用 record shredding and assembly algorithm 来表示复杂的嵌套数据类型
同时辅以按列的高效压缩和编码技术,实现降低存储空间,提高IO效率,降低上层应用延迟。
Parquet就是基于Dremel的数据模型和算法实现的。
语言无关,而且不与任何一种数据处理框架绑定在一起,适配多种语言和组件
查询引擎
Hive, Impala,Pig, Presto, Drill, Tajo, HAWQ, IBM Big SQL
计算框架
MapReduce, Spark,Cascading, Crunch, Scalding, Kite
数据模型
Avro, Thrift,Protocol Buffers, POJOs
数据从内存到Parquet文件或者反过来的过程主要由以下三个部分组成
存储格式(storage format)
parquet-format 定义了Parquet内部的数据类型、存储格式等
对象模型转换器(object model converters)
parquet-mr 完成外部对象模型与Parquet内部数据类型的映射
对象模型(object models)
可以简单理解为内存中的数据表示
Avro, Thrift,Protocol Buffers, Hive SerDe, Pig Tuple, Spark SQL InternalRow等都是对象模型
schema 写需要,读取不需要
每一个字段有三个属性:重复数、数据类型和字段名
重复数可以是以下三种
required(出现1次)
repeated(出现0次或多次)
optional(出现0次或1次)
每一个字段的数据类型可以分成两种
group(复杂类型)
primitive(基本类型)
数据类型
INT64, INT32, BOOLEAN, BINARY, FLOAT, DOUBLE, INT96, FIXED_LEN_BYTE_ARRAY
上一篇
下一篇
clickhouse MergeTree 和 Distributed 存储引擎
后浪程序员
大数据常用存储格式
H2 MVStore
H2 MVStore Log Structured Storage
H2 limits