You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spark Scala读取JSON文件出现_corrupt_record列的解决方法

Spark Scala读取JSON出现_corrupt_record的解决方法

问题根源

你的JSON文件是JSON Lines格式(每行一个独立的JSON对象),但你启用了multiline=true——这个参数是用来读取单个跨多行的大JSON对象/数组的,启用后Spark会把整个文件当成一个完整JSON结构解析,导致每行的片段被识别为损坏记录,从而生成_corrupt_record列。

解决方案

移除multiline配置(默认值即为false),让Spark按JSON Lines格式读取每行的独立JSON对象:

val df = spark.read
  .format("json")
  .load("PATH")

额外排查点

如果仍存在解析问题,可以检查以下内容:

  • 确认每个JSON对象完整占据一行,内部无换行(若JSON对象必须跨多行,需将整个文件整理为单个大JSON数组,所有对象包裹在[]内,再启用multiline=true)
  • 通过设置mode="DROPMALFORMED"跳过格式损坏的记录:
    val df = spark.read
      .format("json")
      .option("mode", "DROPMALFORMED")
      .load("PATH")
    

内容的提问来源于stack exchange,提问作者Prabhakar Yadav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 08:45:46