除了通过流数据之外,还有其他方法可以通过API在BigQuery中插入数据

时间:2017-08-10 15:27:06

标签: google-bigquery

除了通过流媒体数据,还有其他方法可以通过API在BigQuery中插入数据,即Table.insetAll

InsertAllResponse response = bigquery.insertAll(InsertAllRequest.newBuilder(tableId)
    .addRow("rowId", rowContent)
    .build())

1 个答案:

答案 0 :(得分:2)

正如您在docs中所看到的,您还有其他两个可能性:

  

从Google云端存储,BigTable,DataStore

加载

只需从job.insert资源运行job方法,然后将字段configuration.load.sourceUri设置为元数据。

在Python客户端中,这是在方法LoadTableFromStorageJob中完成的。

因此,您可以将文件发送到GCS,然后进行API调用以将文件带到BigQuery。

  

媒体上传

这也是job.load操作,但这次HTTP请求还会从您机器中的文件中携带二进制文件。因此,您可以使用此请求发送磁盘中的任何文件(假设BQ接受该格式)。

在Python中,这是在资源表Table.upload_from_file中完成的。