【发布时间】:2019-08-14 00:31:45
【问题描述】:
我正在解析 XML 并使用数据流管道写入 Bigquery。如果在 BigQuery 中插入失败,如何处理错误?我想编写一个自定义代码来将失败的 xml 写入错误存储桶。
【问题讨论】:
标签: java google-cloud-platform apache-beam
我正在解析 XML 并使用数据流管道写入 Bigquery。如果在 BigQuery 中插入失败,如何处理错误?我想编写一个自定义代码来将失败的 xml 写入错误存储桶。
【问题讨论】:
标签: java google-cloud-platform apache-beam
以下代码在写入 bigquery 时获取失败的行:
TableRow row1 = new TableRow().set("name", "a").set("number", "1");
TableRow row2 = new TableRow().set("name", "b").set("number", "2");
TableRow row3 = new TableRow().set("name", "c").set("number", "error");
PCollection<TableRow> failedRows =
p.apply(Create.of(row1, row2, row3))
.apply(
BigQueryIO.writeTableRows()
.to("project-id:dataset-id.table-id")
.withCreateDisposition(BigQueryIO.Write.CreateDisposition.CREATE_IF_NEEDED)
.withSchema(
new TableSchema()
.setFields(
ImmutableList.of(
new TableFieldSchema().setName("name").setType("STRING"),
new TableFieldSchema().setName("number").setType("INTEGER"))))
.getFailedInserts();
【讨论】: