如何以流模式将数据从 AWS RDS 加载到 Google BigQuery?

how to load data from AWS RDS to Google BigQuery in streaming mode?

如何以流模式将数据从 AWS RDS 加载到 Google BigQuery? 描述:我在 RDS(SQL 服务器)中有数据,并希望将这些数据实时加载到 Google BigQuery 中。

无法直接将更改从 Amazon RDS 插入到 Google Cloud BigQuery。可以用这样的管道来完成

Amazon RDS ----Lambda/DMS----> Kinesis Data Streams -----Lambda----> BigQuery

  1. 使用 Lambda or use Cloud DMS 读取从 Amazon RDS 到 Kinesis Data Streams 的更改。您还可以将其推送到 Kinesis Firehose 以获得 aggregating/batching 条记录。
  2. 使用 Lambda 从 Kinesis 读取 streams/Firehose 使用 tabledata.insertAll (BQ streaming API). Code will be something similar to this 插入 BigQuery。

您可以使用 Cloud Storage Transfer Service that manages and schedules load jobs into BigQuery. This is the recommended migration method for this use case. Firstly you need to load data from AWS RDS to CSV files, then move it to S3. Amazon S3 transfers 两个步骤:

  1. 传输服务用于将数据从 S3 传输到 GCS。
  2. BQ 加载作业用于将数据加载到 BigQuery 中。

我发现的另一个有趣的 solution 是关于使用 AWS Data Pipeline 从 MySQL 导出数据并将其提供给 BigQuery。

此外,您可以使用其中一种 ETL 工具(参见 here) which have integration with Amazon RDS and BigQuery to perform transfer of the data to BigQuery. One of the best is Fivetran

希望对你有所帮助