[英]Stream insert from java: templateSuffix
我想使用 templateSuffix 将数据从我的 java 代码流式传输到 BigQuery 表,但我无法使其正常工作。 我的代码:
return bigquery.tabledata()
.insertAll(
projectId,
datasetId,
tableId,
new TableDataInsertAllRequest()
.setTemplateSuffix(templateSuffix)
.setRows(singletonList(row))
).execute();
当我使用 projectId、datasetId、MyTable20160426 和 20160426 运行它时,出现错误:
"message" : "404 Not found: Table projectId:datasetId.MyTable20160426"
当我使用 projectId、datasetId、MyTable 和 20160426 运行它时,出现错误:
"message" : "404 Not found: Table projectId:datasetId.MyTable"
表 MyTable 已经存在并且已经在日期模板化(我使用了 GCS 的批量上传)(20160426 是今天的日期)
我如何让它工作?
我应该去哪里了解哪里出了问题?
谢谢
首先,基表projectId:datasetId.MyTable
应该存在并且应该已经有一个架构。 这就是 BigQuery 知道如何查找创建的模板化表的架构的方式。
其次,您应该通过MyTable
而不是MyTable20160426
作为您请求中的表 ID。
第三,缓存表的存在(或不存在)。 因此,如果您收到“未找到”错误,然后创建表,您仍会收到“未找到”错误长达半小时。
听起来您可以等待并重试。 如果这不起作用,请提供您正在使用的实际项目、数据集和表 ID,并将详细信息通过电子邮件发送至 tigani@google.com,我可以帮助调查发生了什么。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.