一、parquet文件
Parquet是Apache Hadoop生态系统的一种免费的开源面向列的数据存储格式。 类似于Hadoop中可用的其他列存储文件格式,如RCFile格式和ORC格式。Parquet有高效编码压缩及更少IO,性能优势明显。
Parquet文件是由一个header以及一个或多个block块组成,以一个footer结尾。header中只包含一个4个字节的数字PAR1用来识别整个Parquet文件格式。数据存在block中,block包括行组等。metadata存在于footer中,包含了版本信息,schema、key-value paris以及所有block中的metadata信息。


二、java解析
1.读取数据
hdfs上的parquet文件,读取文件中每个行组中的数据
private void readParquet(String filePath) throws IOException{
Path file = new Path(filePath);
ParquetReader.Builder<Group> builder = ParquetReader.builder(new GroupReadSupport(),file);
ParquetReader<Group> reader = builder.build();
SimpleGroup group =null;
GroupType groupType = null;

本文介绍了Apache Parquet文件格式,一种高效的列存储格式,常用于Hadoop生态系统。Parquet文件由header、block和footer组成,数据存储在block中,metadata在footer中。在Java中,可以通过ParquetReader读取文件数据,并使用ParquetFileReader获取schema信息。示例代码展示了如何读取数据和列名及类型。
1万+

被折叠的 条评论
为什么被折叠?



