在不更改旧架构的情况下在pyspark中读取json文件

时间:2019-05-26 05:23:20

标签: python json pyspark

我每天都收到带有10个属性的json,但是几天后,如果任何属性没有值,它们将发送9个属性,而第十个属性在json中不存在。如何在不更改旧表架构的情况下读取pyspark中的json文件

1 个答案:

答案 0 :(得分:1)

似乎在读取文件时应强制执行schema。 我假设你有这样的东西:

df = spark.read.json(path_to_json_files)

为了保留所有属性/字段,请使用如下模式:

df = spark.read.schema(file_schema).json(path_to_json_files)

要获取file_schema,可以使用一个旧文件,您知道每个属性都可用:

file_schema = spark.read.json(full_json_file).schema