使用 Parquet 格式在 Apache Spark 中附加列描述

3

我使用以下命令读取parquet文件:

df = spark.read.parquet(file_name)

使用以下命令获取列:

df.columns

返回一个列列表 ['col1', 'col2', 'col3']。

我读到parquet格式能够在文件中存储一些元数据。

是否有方法可以存储和读取额外的元数据,例如,附加每个列的人类描述?

谢谢。


看起来这就是parquet文件的持久化方式(没有标题或“col1”等)。我会先检查一下。默认情况下,它存储列名和类型。 - michalrudko
https://github.com/awesome-spark/spark-gotchas/blob/master/06_data_preparation.md#setting-custom-column-metadata - user10938362
1个回答

3

无法在Parquet文件中读取或存储任意附加元数据。

当提到Parquet文件中的元数据时,指的是与字段相关的技术元数据,包括嵌套字段数、类型信息、长度信息等。如果查看Parquet文档中的SchemaElement类(https://static.javadoc.io/org.apache.parquet/parquet-format/2.6.0/org/apache/parquet/format/SchemaElement.html),您将找到架构中每个字段的所有可用元数据。这不包括除字段名称以外的任何人类可读的描述。

有关Parquet元数据的良好概述可以在此处的“文件格式”部分找到 - https://parquet.apache.org/documentation/latest/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接