【发布时间】:2017-08-14 21:52:15
【问题描述】:
当我从 BigQuery 读取数据作为查询结果时,我正在运行 GCP Dataflow 作业。我正在使用 google-cloud-dataflow-java-sdk-all 1.9.0 版。设置管道的代码片段如下所示:
PCollection<TableRow> myRows = pipeline.apply(BigQueryIO.Read
.fromQuery(query)
.usingStandardSql()
.withoutResultFlattening()
.named("Input " + tableId)
);
查询很复杂导致错误信息:
查询超出了第 1 层的资源限制。需要第 8 层或更高。错误:查询超出第 1 层的资源限制。需要第 8 层或更高。
我想设置maximumBillingTier,因为它是在 Web UI 或 bq 脚本中完成的。除了为整个项目设置默认值之外,我找不到任何方法,不幸的是这不是一个选项。
我试图通过这些设置它但没有成功:
- DataflowPipelineOptions - 这个和它扩展的任何接口似乎都没有那个设置
- BigQueryIO.Read.Bound - 我希望它就在
usingStandardSql和其他类似的旁边,但显然它不存在 - JobConfigurationQuery - 此类具有所有很酷的设置,但在设置管道时似乎根本不使用它
有没有办法从 Dataflow 作业中传递此设置?
【问题讨论】:
标签: google-bigquery google-cloud-platform google-cloud-dataflow