BigQuery拒绝在流式传输时插入少量记录

时间:2018-03-27 14:55:09

标签: python google-cloud-platform google-bigquery streaming schema

我一直在尝试使用python google-cloud包from google.cloud import bigquery将数据流式传输到BigQuery。

我观察到的是它拒绝插入几行说

[{u'debugInfo': u'', u'reason': u'invalid', u'message': u'no such field.', u'location': u'user.new_user'}]}]

但是,我可以在架构table.schema

中看到该列
[(u'USER', u'record', u'NULLABLE', None, (SchemaField(u'new_user', u'string', u'NULLABLE', None, ())))]

这是因为,我正在尝试流式传输以比BigQuery文档中提到的更快的速度更新?

我试图在终端上运行相同的东西,这没有错误。当我尝试以更高的速率流式传输时会发生这种情况。

目前,我正在使用

self.bigquery_client.create_rows_json(table, batched_event,retry=bigquery.DEFAULT_RETRY.with_deadline(10),skip_invalid_rows=True, ignore_unknown_values=True)

1 个答案:

答案 0 :(得分:3)

如果您在使用流式传输时修改架构,则流式传输系统不会立即获取架构更改。更多信息:

https://cloud.google.com/bigquery/troubleshooting-errors#metadata-errors-for-streaming-inserts