当前位置: 首页 > 面试题库 >

将JSON文件读入Spark时_corrupt_record错误

经福
2023-03-14
问题内容

我有这个JSON文件

{
    "a": 1, 
    "b": 2
}

这是通过Python json.dump方法获得的。现在,我想使用pyspark将此文件读入Spark中的DataFrame中。根据文档,我正在这样做

sc = SparkContext()

sqlc = SQLContext(sc)

df = sqlc.read.json(’my_file.json’)

打印df.show()

print语句虽然说明了这一点:

+---------------+
|_corrupt_record|
+---------------+
|              {|
|       "a": 1, |
|         "b": 2|
|              }|
+---------------+

任何人都知道发生了什么事以及为什么它无法正确解释文件?


问题答案:

您的输入文件中每行需要有一个json对象,请参阅http://spark.apache.org/docs/latest/api/python/pyspark.sql.html#pyspark.sql.DataFrameReader.json

如果您的json文件看起来像这样,它将为您提供预期的数据帧:

{ "a": 1, "b": 2 }
{ "a": 3, "b": 4 }

....
df.show()
+---+---+
|  a|  b|
+---+---+
|  1|  2|
|  3|  4|
+---+---+


 类似资料:
  • 我正在尝试将 json 文件读入 Spark 数据帧,但我将整个文件作为一行和一列获取,我试图将其拆分为多列: 这是我运行这行代码得到的输出: 这是已创建的数据帧的架构: 我的目标是将图像中的每个对象放在一行和分隔的列中,这意味着例如“Z4ah9SemQjX2cKN187pX”,其值为:艺术家,created_at…在第一行,“Z552dVXF5vp80bAajYrn”在第二行等。 我很陌生,可以

  • 我在apache Spark中读取本地文件时出错。scala>val f=sc.textfile(“/home/cloudera/downloads/sample.txt”)

  • 我正在尝试将一个文件夹中的多个csv文件导入到一个数据帧中。这是我的密码。它可以遍历文件并成功地打印它们,它可以将一个文件读入一个数据帧,但将它们组合在一起打印会出错。我看到了很多类似的问题,但回答是复杂的,我认为“Pythonic”的方式是简单的,因为我是新手。事先谢谢你的帮助。错误消息总是:没有这样的文件或目录:“一些文件名”,这没有意义,因为它成功地打印了文件名在打印步骤。

  • 我尝试安装java并使用XLConnect包mmethods(两者都是),但是我得到了如下所示的错误: 我绝对不是试图加载一个空文件,我绝对有访问/权限从文件位置读取。我可能做错了什么? R read_excel:libxls错误:无法解析文件

  • 我想用GSON库用java读这个JSON文件。我刚开始使用gson Libray。有人请纠正我的代码我的JSON文件如下所示: 这是我为读取这个文件而编写的java代码: 但我得到以下异常:

  • 我得到了一个CSV文件和一个头文件,它必须通过Spark(2.0.0和Scala2.11.8)作为数据frame读取。 是否有任何方法可以使用spark代码仅从CSV头中转义特殊字符?