pyspark - 无法在Databricks中使用pyspark读取json文件

标签 pyspark azure-databricks

我正在使用 pyspark 从 JSON 文件创建数据帧

JSON文件的结构如下:

[
  {
    "Volcano Name": "Abu",
    "Country": "Japan",
    "Region": "Honshu-Japan",
    "Location": {
      "type": "Point",
      "coordinates": [
        131.6,
        34.5
      ]
    },
    "Elevation": 571,
    "Type": "Shield volcano",
    "Status": "Holocene",
    "Last Known Eruption": "Unknown",
    "id": "4cb67ab0-ba1a-0e8a-8dfc-d48472fd5766"
  },
  {
    "Volcano Name": "Acamarachi",
    "Country": "Chile",
    "Region": "Chile-N",
    "Location": {
      "type": "Point",
      "coordinates": [
        -67.62,
        -23.3
}]

我将使用以下代码行读取文件:

myjson = spark.read.json("/FileStore/tables/sample.json")

但是,我不断收到以下错误消息:

Spark Jobs
myjson:pyspark.sql.dataframe.DataFrame
_corrupt_record:string

有人可以告诉我我可能做错了什么吗?

是json文件的结构有问题吗?

最佳答案

似乎您的 JSON 是多行 Json,这就是问题的原因,要解决这个问题,下面是代码片段,

myjson = spark.read.option("multiline", "true").option("mode", "PERMISSIVE")
         .json("/FileStore/tables/sample.json")

希望这能解决问题。

关于pyspark - 无法在Databricks中使用pyspark读取json文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59471569/

相关文章:

python - 在 DataBrick 平台中为 PySpark API 安装 IsolationForest 的最佳做法是什么?

python - 从 Azure Datafactory 管道中的 Databricks Notebook 获取异常

azure - 无法从 Azure DataBricks 在存储 Gen2 上创建装载 [wasbs 与 abfss]

python - PySpark 2 - 正则表达式替换之前的所有内容 <BR>

python - 我可以在 pyspark mapPartitions 中使用多线程吗?

apache-spark - Spark (PySpark) 文件已存在异常

azure - 从 Databricks 笔记本中删除 Azure SQL 表

python - Spark : How to use HBase filter e. g QualiferFilter by python-api

sql - 在 Azure Synapse 专用/无服务器 SQL 池中使用增量表

databricks - 下载文件(数据 block /驱动程序)