【问题标题】:Export GCP Cloud SQL PostgreSQL to GCS in Parquet Format以 Parquet 格式将 GCP Cloud SQL PostgreSQL 导出到 GCS
【发布时间】:2021-06-02 18:23:10
【问题描述】:

我在 GCP Cloud SQL PostgreSQL 中有数据,我想将这些数据以 Parquet 格式导出到 GCS,我看到直接不可能,只能以 SQL 和 CSV 格式执行,无论如何以 Parquet 格式导出数据.

【问题讨论】:

    标签: google-cloud-platform google-cloud-storage google-cloud-sql parquet


    【解决方案1】:

    我建议您通过 BigQuery 实现这一目标

    1. 连接BigQuery to Cloud SQL postgres instance with Federated queries 功能
    2. 在 BigQuery 中使用 Cloud SQL postgres 数据创建一个新表
    CREATE TABLE my_dataset.temp_table AS
    SELECT * FROM EXTERNAL_QUERY("project_id.region.connection_name", "SELECT * FROM .....;");
    
    1. 使用带有镶木地板选项的BigQuery export table feature(处于预览阶段)
    bq --location=region extract \
    --destination_format parquet \
    project_id:my_dataset.temp_table \
    gs://bucket/filename.parquet
    
    1. 在 BigQuery 中删除临时表

    这种方式保证你只有一个文件(或少量分片文件。

    但是你可以加快这个过程,但是这个解决方案可以生成更多的文件

    1. 使用联合表功能将 BigQuery 连接到 Cloud SQL postgres 实例
    2. Export the data to GCS 仅在一个查询中
    EXPORT DATA OPTIONS(
      uri='gs://bucket/filename.parquet*',
      format='PARQUET') AS
    SELECT * FROM EXTERNAL_QUERY("project_id.region.connection_name", "SELECT * FROM .....;");
    

    https://cloud.google.com/bigquery/docs/reference/standard-sql/other-statements#export_data_statement

    【讨论】:

      猜你喜欢
      • 2021-05-02
      • 2020-01-10
      • 1970-01-01
      • 2020-06-19
      • 1970-01-01
      • 1970-01-01
      • 2017-11-20
      • 2021-11-08
      • 2020-08-31
      相关资源
      最近更新 更多