使用数据流 JdbcIO API 将 GCS 文件中可用的数据写入云 sql



如何将GCS文件中可用的数据写入RDBMS DB,即"gs://***/sampleBigtable.csv"。你能分享一些例子吗?

pipeline
        .apply(TextIO.read().from("gs://***/sampleBigtable.csv"))
        .apply(JdbcIO.<String>write().withDataSourceConfiguration(
            DataSourceConfiguration.create("org.postgresql.Driver","jdbc:postgresql://***:5432/test")
                .withUsername("**")
                .withPassword("password10"))
                .withStatement("insert into person values(?,?)")
                    .withPreparedStatementSetter((element, query) -> {
                        query.setInt(1, 1);
                        query.setString(2, "Hello");
                    })
        );

我从您的问题中了解到,您不需要在传输过程中丰富文件中的数据或以其他方式操作它。在这种情况下,更简单的解决方案是只使用Cloud Sql csv导入选项之一。

确保文件为有效的 csv 格式,在数据库中创建表,允许 Cloud Sql 服务账号访问存储桶,并在 Cloud Shell 中运行以下命令:

gcloud sql import csv [INSTANCE_NAME] gs://[BUCKET_NAME]/[FILE_NAME] \ --数据库=[DATABASE_NAME] --表=[TABLE_NAME]

相关内容

  • 没有找到相关文章

最新更新