AWS之Glue使用方法

Glue是AWS的云上ETL工具,核心是Spark,查询也是先获取数据源的元数据,再通过元数据溯源数据。
本文示范使用Glue把数据从RDS抽到redshift的操作
总体步骤:
1.连接数据源
2.建立爬网程序
3.运行爬网程序生成元数据表
4.建立作业
5.运行作业
(再后面还可建立工作流程实现作业流,本文未涉及)

建立连接

连接可以是(半结构化)文件,和各种数据库,和kafka
图中的“数据库”是AWS对元数据表集合的叫法而已,和我们说的数据库不是一个概念,“表”是指元数据表,“连接”是指数据连接
添加元数据表的方法分手动添加爬网程序添加(其实就是自动添加,和爬虫没关系,为了可以及时侦测元数据改变,爬网程序可以重复定时按计划进行,所以推荐爬网程序添加)
分类器可以自定义识别半结构化文件方式
在这里插入图片描述

首先按引导各自连接RDS和redshift,其中有一步容易踩坑,需要IAM角色权限,细节如下,缺一不可:
1.第一步创建IAM角色并给AWSGlueServiceRole这个策略权限https://amazonaws-china.com/cn/blogs/china/use-aws-glue-to-run-etl-jobs-against-non-native-jdbc-data-source/
2.保证RDS和redshift所在的VPC终端节点列表中加入了S3

最后建立连接如下
在这里插入图片描述

建立爬网程序

按引导建立爬网程序获取下图这张RDS中的表的元数据
在这里插入图片描述
运行成功后会在“表”中会生成一张元数据表
在这里插入图片描述

建立作业

PS:Glue的作业是自动临时搭建spark环境的,大概需要15分钟,然后才开始跑,作业完成后5分钟若没有下个作业使用该环境便会自动销毁;数据少可以不用spark,只用python shell来进行ETL,启动时间短,但步骤好麻烦学不来,宁愿用spark等15分钟

这一步的IAM同样使用建立连接时的IAM角色
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
运行作业,等待15分钟(上面说的需要搭环境),报succeeded后用navicat查看redshift中已经创建并同步了这张表数据
在这里插入图片描述

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值