pyspark 正在将json文件批量读入 Dataframe

uqjltbpv  于 2023-01-25  发布在  Spark
关注(0)|答案(1)|浏览(133)

全部-
我有数百万个单个json文件,我想把它们都吸收到Spark Dataframe 中,但是我没有看到append调用,在那里我可以把json作为附加项追加进去,相反,我唯一能让它工作的方法是:

for all json files do:
    df_tmp = spark.read.json("/path/to/jsonfile", schema=my_schema)
    df = df.union(df_tmp)

df是最终聚合的 Dataframe 。这种方法可以处理几百个文件,但随着文件数量增加到几千个,速度越来越慢。我怀疑创建和合并 Dataframe 的成本非常高,而且感觉也很笨拙。有没有更好的方法?TIA

goqiplq2

goqiplq21#

你可以只传递路径到文件夹,而不是单个文件,它会读取所有的文件在它。
例如,您的文件位于名为JsonFiles的文件夹中,您可以写入,

df = spark.read.json("/path/to/JsonFiles/")

df.show()

相关问题