google-app-engine - 从 Google BigQuery 提取结果到云存储 golang

标签 google-app-engine go google-bigquery google-cloud-storage

我正在使用以下 GoLang 包:https://godoc.org/cloud.google.com/go/bigquery

我的应用在 Google App Engine 中运行

如果我对文档的理解正确,应该可以使用作业将作业/查询的结果提取到 Google Cloud Storage。我认为文档不是很清楚,想知道是否有人有示例代码或其他帮助。

TL:DR

  1. 在使用 Go Lang 而不是命令行时如何访问临时表。

  2. 如何将 Bigquery 的结果提取到 GCS

** 编辑 **

我使用的解决方案

我创建了一个临时表并将其设置为查询结果的Dst(目标)并使用它创建了一个导出作业。

dataset_result.Table(table_name).Create(ctx, bigquery.TableExpiration(time.Now().Add(1*time.Hour)))

2018 年更新:

https://github.com/GoogleCloudPlatform/google-cloud-go/issues/547

获取表名:

q := client.Query(...)
job, err := q.Run(ctx)
// handle err
config, err := job.Config()
// handle err
tempTable := config.(*QueryConfig).Dst

最佳答案

How do I extract the result of my BigQuery to GCS

您不能直接将查询结果写入 GCS。您首先需要运行查询,将结果保存到永久表中,然后启动到 GCS 的导出作业。

https://cloud.google.com/bigquery/docs/exporting-data

How do I get access to the temporary table when using Go Lang instead of command line.

您调用作业 API,或者如果使用 Web UI,则查看查询历史记录。参见 herehere .

https://cloud.google.com/bigquery/querying-data#temporary_and_permanent_tables

关于google-app-engine - 从 Google BigQuery 提取结果到云存储 golang,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42388804/

相关文章:

sql - 多次取消嵌套命中自定义维度 BigQuery

python - 导入/包含配置 Python

http - 从同一浏览器调用时,为什么go.mux会阻塞time.sleep?

google-bigquery - 更新bigquery表的不同方式

r - 从 BigQuery 将数据下载到 R 时, 'start_index' (TYPE_UINT64) 处的值无效, "1e+05"[无效] 问题

json - 如何在golang中将字符串转换为json?

google-app-engine - Google App Engine Datastore 中的高效 NoSQL 建模

python - 超出软专用运行时内存错误

php - 使用 GCP Cloud SQL 只读副本

amazon-web-services - 找不到 Golang 的 API 网关映射模板