使用PARQUET格式时,可以节省数据框架



如果一个人调用 df.write.parquet(destination),是否保存了数据框架架构(即 StructType信息)?

如果Parquet文件是由Spark以外的其他程序生成的,则sqlContext.read.parquet如何找出数据框架的模式?

parquet文件在保存时会自动保留原始数据的架构。因此,如果它是火花或其他撰写/读取数据的系统,将没有区别。


如果使用一列或多列在保存时将数据划分,则这些列的数据类型会丢失(因为信息存储在文件结构中)。当阅读时,可以通过SPARK自动推断这些数据类型(当前仅支持数字数据类型和字符串)。

可以通过将spark.sql.sources.partitionColumnTypeInference.enabled设置为false来关闭此自动推断,这将使这些列读为字符串。有关更多信息,请参见此处。

相关内容

  • 没有找到相关文章

最新更新