如何使用pyspark将bz2文件读入数据帧?

时间:2018-06-04 21:57:46

标签: python apache-spark pyspark apache-spark-sql

我可以使用

将一个json文件读入Pyspark中的数据框
spark = SparkSession.builder.appName('GetDetails').getOrCreate()
df = spark.read.json("path to json file")

但是,当我尝试将bz2(压缩的csv)读入数据帧时,它会给我一个错误。我正在使用:

spark = SparkSession.builder.appName('GetDetails').getOrCreate()
df = spark.read.load("path to bz2 file")

你能帮忙纠正我吗?

1 个答案:

答案 0 :(得分:0)

方法 spark.read.load() 有一个可选参数 format,默认情况下为“parquet”。

因此,要使您的代码正常工作,它应该如下所示:


df = spark.read.load("data.json.bz2", format="json")

此外,spark.read.json 将完美适用于压缩的 JSON 文件,例如:


df = spark.read.json("data.json.bz2")