将 BigQuery 中的数据导出到本地 PostgreSQL/MySql 数据库

Den*_*nis 5 python google-bigquery

我是 BigQuery 和 BigQuery 的 Python API - 处女。

我的任务是:使用 BigQuery 和 Python APIgoogle open dataset 中 提取数据,将数据加载到 MySql/PostgreSQL 本地数据库(安装在我电脑上的那个)

我看到它的方式(经过我 2 小时的研究)是:将数据拉入本地 csv 文件(使用这种示例代码),将文件中的数据加载到数据库中。

这是否类似于执行任务的正确方式?

如果没有,您能否提供一些建议/说明?

提前致谢。

Mic*_*hri 1

API方法

您上面列出的步骤是正确的。总之,开发人员会:

  1. 使用 BigQuery API 的“ Jobs: insert ”方法插入数据提取作业 - 这会将数据发送到 Google Cloud Storage 存储桶。

  2. 使用 Google Cloud Storage API 的“ Objects: get ”方法将文件下载到本地。

  3. 为了获得额外的积分,我将使用“ Tables: get ”方法查询原始 BQ 表来获取原始 BigQuery 表架构,并使用它来构建 MySQL 导入步骤的架构。

WEB界面方式

为什么不直接使用 Google BigQuery Web UI 运行您需要的任何查询,然后通过 UI 将数据导出到 Google Cloud Storage 存储桶中?为什么需要使用Python?

  • **编辑:更新了原始答案** 好的 - 那么是的,您上面列出的步骤是正确的。总之,您将: 1. 使用 BigQuery API 的“作业:插入”方法插入数据提取作业 - 这会将数据发送到 Google Cloud Storage 存储桶。2. 使用 Google Cloud Storage API 的“Objects: get”方法将文件下载到本地。3. 为了额外加分,我将使用“Tables: get”方法查询原始 BQ 表以获取原始 BigQuery 表架构,并使用它来构建 MySQL 导入步骤的架构。 (2认同)