什么是parquet文件?

核能气质少年 提交于 2019-11-28 22:08:26

Apache Parquet是Hadoop生态系统中任何项目均可使用的列式存储格式,而与选择数据处理框架,数据模型或编程语言无关。

parquet的起源:

我们创建Parquet是为了使Hadoop生态系统中的任何项目都可以使用压缩的,高效的列式数据表示形式。

Parquet是从头开始构建的,考虑了复杂的嵌套数据结构,并使用了Dremel论文中描述的记录粉碎和组装算法。我们相信这种方法优于嵌套名称空间的简单扁平化。

 

文件格式

阅读此文件以了解格式。

4-byte magic number "PAR1"
<Column 1 Chunk 1 + Column Metadata>
<Column 2 Chunk 1 + Column Metadata>
...
<Column N Chunk 1 + Column Metadata>
<Column 1 Chunk 2 + Column Metadata>
<Column 2 Chunk 2 + Column Metadata>
...
<Column N Chunk 2 + Column Metadata>
...
<Column 1 Chunk M + Column Metadata>
<Column 2 Chunk M + Column Metadata>
...
<Column N Chunk M + Column Metadata>
File Metadata
4-byte length in bytes of file metadata
4-byte magic number "PAR1"

在上面的示例中,此表中有N列,分为M行组。文件元数据包含所有列元数据起始位置的位置。可以在旧文件中找到有关元数据中包含的内容的更多详细信息。

在数据之后写入元数据,以允许单遍写入。

希望读者首先读取文件元数据以找到他们感兴趣的所有列块。然后应顺序读取列块。

这里只做简单介绍:

如果想细细了解,请这里走:

http://parquet.apache.org/documentation/latest/

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!