小编DJ3*_*319的帖子

将 csv 从 gcs 迁移到 postgresql

我正在尝试使用 python 脚本将 csv 文件从从 BigQuery 导出的 Google Cloud Storage (GCS) 迁移到 PostgreSQL Google Cloud sql 实例。

我希望使用 Google API,但在文档中发现了这一点:

PostgreSQL 实例不支持使用 Cloud SQL Admin API 导入 CSV 数据。

作为替代方案,我可以使用psycopg2库并将 csv 文件的行流式传输到 SQL 实例中。我可以通过三种方式做到这一点

  • 逐行:读取每一行然后提交插入命令然后提交
  • 批处理流:读取每一行,然后提交插入命令,然后在 10 行或 100 行后提交。
  • 整个 csv:读取每一行并提交插入命令,然后仅在文档末尾提交。

我担心的是这些 csv 文件可能包含数百万行,并且为上述三个选项中的任何一个运行此过程对我来说似乎是一个坏主意。

我有哪些选择?本质上,我在 BigQuery 中有一些原始数据,我们在导出到 GCS 之前对其进行了一些预处理,以准备导入到 PostgreSQL 实例。我需要将此预处理数据从 BigQuery 导出到 PostgreSQL 实例。

这不是这个问题的重复,因为我最好寻找将数据从 BigQuery 导出到 PostgreSQL 实例的解决方案,无论是通过 GCS 还是直接。

python csv postgresql google-bigquery google-cloud-platform

6
推荐指数
1
解决办法
1910
查看次数