使用BigQueryIO.Read.from(projectId +“:”+ tableName)面对google-dataflow作业的问题

时间:2017-09-25 03:48:16

标签: google-bigquery

我正面临谷歌数据流作业从BigQuery表读取的问题。

尝试了几个从BigQuery读取的选项,但在两种情况下都没有成功。

在将模板部署到GCP之后触发的第一次运行是成功的,即根据预期从BQ表获取数据。

第二次触发相同的作业,所有下一次运行都没有获取数据,但是如果我使用选项A,则作业成功完成。

然而,如果我尝试使用OptionB,即使用fromQuery,我将从第二次运行开始收到错误(如下所述)。

(请注意,在将这些模板部署到GCP后,我的第一次运行总是成功的

示例代码:(选项A)

p.apply("ReadXXXXTable",BigQueryIO.Read.from(projectId+":"+tableName)) 

我尝试了其他选项(选项B),即使用fromQuery:

p.apply(BigQueryIO.Read
    .named("ReadXXXXX")
    .fromQuery("SELECT field1, field2, field3 FROM [" + projectId +  ":" + tableName + "] where fieldx='XXX' and datediff(CURRENT_TIMESTAMP(),TIMESTAMP(field3))=0 order by field3 desc"))

如果是选项B,我收到以下错误:

  

java.io.IOException错误,由com.google.api.client.googleapis.json.GoogleJsonResponseException引起

0 个答案:

没有答案