处理数据流管道中的

处理数据流管道中的

本文介绍了如何使用 Java 处理数据流管道中的 BigQuery 插入错误?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在解析 XML 并使用数据流管道写入 Bigquery.如果在 BigQuery 中插入失败,如何处理错误?我想编写一个自定义代码,将失败的 xml 写入错误存储桶.

I'm parsing a XML and write to Bigquery using dataflow pipeline. How can the errors be handled if the insert fails in BigQuery? I want to write a custom code to write the failed xml to error bucket.

推荐答案

以下代码在写入 bigquery 时获取失败的行:

The following code gets the failed rows when writing to 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();

这篇关于如何使用 Java 处理数据流管道中的 BigQuery 插入错误?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-22 18:35