【问题标题】:Big Query streaming buffer insert null rows python大查询流缓冲区插入空行python
【发布时间】:2017-05-11 13:58:17
【问题描述】:

我正在使用 Big Query Python SDK 将数据插入 Big Query。 基本上,我正在检查表是否已经存在,并且在我使用 insert_data 函数插入数据之后(代码如下)。

我没有任何错误,我可以在表格预览流缓冲区中看到正确的估计行数。问题是几个小时后,当预览可用时,所有字段都设置为 null ...

知道发生了什么吗?

  bq_table = bq_dataset.table(bq_table_prefix + date)
  bq_table.schema = [
        SchemaField('Date', 'string', mode='nullable'),
        SchemaField('Hour', 'string', mode='nullable'),
        SchemaField('Value', 'string', mode='nullable'),
  ]


  if bq_table.exists():
    bq_table.delete()
  bq_table.create()   

  #tuples is [('string','string','string'),('string','string','string')]
  errors = bq_table.insert_data(tuples)  
  if not errors:
    print('Success')
  else:
    print('Errors:')
    print(errors)

【问题讨论】:

    标签: python insert tuples google-bigquery


    【解决方案1】:

    不确定您是否属于这种情况,但如果您删除表,则必须至少等待 2 分钟才能再次在其上流式传输数据。(link)

    测试您是否正在发生这种情况的一种方法是在某个新创建的表中运行您的进程,这样您就不必删除它并查看它是否有效。如果是这样,那么您可能需要更改上传数据的策略(避免删除或等待几分钟再开始流式传输)。

    【讨论】:

      猜你喜欢
      • 2015-11-06
      • 1970-01-01
      • 2019-05-29
      • 1970-01-01
      • 2016-05-27
      • 2021-09-27
      • 2021-11-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多