Apache spark 从Dataproc写入BigQuery时在何处查找错误?

Apache spark 从Dataproc写入BigQuery时在何处查找错误?,apache-spark,google-cloud-platform,google-bigquery,google-cloud-dataproc,Apache Spark,Google Cloud Platform,Google Bigquery,Google Cloud Dataproc,我正在使用BigQuery连接器从Dataproc作业将数据集写入BigQuery。我使用JSON编写,但有时会出现以下错误: 原因:java.io.IOException:执行BigQuery作业时出错: {“位置”:“{tempOutputLocation}”, “消息”:“读取数据时出错,错误消息:JSON表遇到太多错误,” “放弃。行:3;错误:1。请查看错误[]集合以获取” “更多细节。”, “原因”:“无效”} 我确实理解这条消息的含义,我甚至可以在大多数情况下修复它,但它让我感到

我正在使用BigQuery连接器从Dataproc作业将数据集写入BigQuery。我使用JSON编写,但有时会出现以下错误:

原因:java.io.IOException:执行BigQuery作业时出错:
{“位置”:“{tempOutputLocation}”,
“消息”:“读取数据时出错,错误消息:JSON表遇到太多错误,”
“放弃。行:3;错误:1。请查看错误[]集合以获取”
“更多细节。”,
“原因”:“无效”}
我确实理解这条消息的含义,我甚至可以在大多数情况下修复它,但它让我感到困扰,因为我没有找到他们正在谈论的
errors[]collection
。这是令人沮丧的,因为解决问题的唯一方法是查看生成的json,猜测错误并尝试修复它。这个系列可能会让事情变得更简单

我查看了我的dataproc存储桶,但找不到任何错误集合

任何关于如何获得它的想法都将不胜感激

编辑:有关错误的更多详细信息 我是这样写信给BigQuery的(经典方法):

//准备配置
BigQueryOutputConfiguration.configure(
形态,
路径
模式,
临时桶,
BigQueryFileFormat.NEWLINE_分隔_JSON,
[TextOutputFormat[,]]
)
//使用Gson从case类值创建Json并保存到BigQuery
output.rdd.map(值=>(null,新的GsonBuilder())
.setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_,带下划线)
.create()
.toJsonTree(值)
)).saveAsNewAPIHadoopDataset(conf)
现在,Json值中有时会出现一些错误,BigQuery不高兴。例如:

//使用这样的模式
val schema:BigQueryTableSchema=new BigQueryTableSchema().setFields(列表(
新的BigQueryTableFieldSchema().setName(“字段”).setType(“字符串”).setMode(“NULLABLE”)
).asJava
//如果我尝试编写类似以下内容的Json,将引发错误:
案例类别MyClass(字段:Double)
val json=new Gson().toJson(MyClass(3.14))
在这里,我的Dataproc作业将失败,返回上面提到的错误。这是有意义的,因为我提供的是双精度而不是字符串。但有时它更复杂,比如小数太多


无论如何,错误消息清楚地提到
,请查看错误[]收集更多详细信息。
我希望在某个地方有一个收集,其中包含了关于所犯错误的更多详细信息,而不是
JSON表遇到了太多错误。
。但我找不到它。

我重现了这个问题,BigQuery API返回的
错误被BigQuery connector丢弃。我申请了BQ连接器。我们将在下一版本中修复。

您能告诉我问题是什么吗?我想重现问题。@Dagang,我已经提供了有关如何重现的更多信息。如果您需要更多信息,请告诉我。