借助Glue实现RDS数据同步RedShift

2022-06-15 10:00

AWS Glue 是一项完全托管的 ETL(提取、转换和加载)服务,可以轻松高效地对数据进行分类、清理和扩充,并在各种数据存储和数据流之间可靠地移动数据。


本文将讨论一种RDS数据迁移方案,即借助Glue将Aurora for MySQL中的表进行全量以及定时执行增量的方式迁移到AWS RedShift数据仓库中进行数据分析。


在开始之前,我们先来了解以下Glue中的常用组件都有哪些。

Crawler:连接到数据存储(源或目标),通过分类器不断更新数据架构,然后在 AWS Glue Data Catalog 中创建元数据表。

AWS Glue Data Catalog:AWS Glue 中的持久元数据存储。它包含表定义、作业定义以及其他用于管理您的 AWS Glue 环境的控制信息。

Data Stores、 Data Source、 Data Target:数据存储是持久存储数据的存储库。数据源是用作进程或转换输入的数据存储。数据目标是进程或转换写入的数据存储。

Job:执行 ETL 工作所需的业务逻辑。

Trigger:启动 ETL 任务。可以根据计划时间或事件来定义触发器。




接下来我们将动手演示如何通过Glue实现数据从Aurora迁移到Redshift。

Step 1.

  创建Aurora for MySQL数据库。

  登录数据库,并插入几条示例数据。

Step 2.

创建爬网程序

  数据存储选择“JDBC” , 然后添加连接

  填写数据库连接的JDBC URL,以及数据库所在的VPC,子网以及安全组。

  添加用于存放爬网程序所创建的表的数据目录,其余选项可以不填写

  运行爬网程序,可以看到爬取到的数据库表

  添加作业

  选择默认的脚本存放路径

  启用作业书签,当多次运行作业的时候,Glue会根据书签记录的上次运行时处理的位置增量加载数据

  选择一个表作为数据源

  运作作业

  登录Redshift,可以看到数据已经同步过来了

Step 3.

  创建触发器,用于定时执行Job作业,实现自动增量导入数据

  选择执行Job的频率

  添加相应Job

  启动“作业书签”,启动触发器并观察Redshift 中数据是否实现增量同步

至此,我们已经完成了借助Glue

来实现数据的增量迁移。



云与应用现代化
——
扫描关注微信公众号
获取更多云端资讯
联系我们
——

模板表单-2(1)

  • 姓名*

  • 电话*

  • 邮箱*

  • 公司*

  • 职称*

  • 地址*

  • 需求*