基于AWS Serverless的Glue服务进行ETL(提取、转换和加载)数据分析(一)——创建Glue

news/2024/5/20 9:26:36 标签: aws, serverless, etl

1 通过Athena查询s3中的数据

此实验使用s3作为数据源

ETL:

E    extract         输入
T    transform     转换
L    load             输出

大纲

  • 1 通过Athena查询s3中的数据
    • 1.1 架构图
    • 1.2 创建Glue数据库
    • 1.3 创建爬网程序
    • 1.4 创建表
      • 1.4.1 爬网程序创建表
      • 1.4.2 手动创建表
    • 1.5 Athena查询
    • 1.6 总结

1.1 架构图

在这里插入图片描述

1.2 创建Glue数据库

首先我们需要创建一个数据库。我们将会使用爬网程序来填充我们的数据目录。

步骤图例
1、入口在这里插入图片描述
2、创建数据库 只需输入一个数据库名称即可在这里插入图片描述
3、结果在这里插入图片描述

1.3 创建爬网程序

在任务中,我们经常会使用Glue爬网程序来填充我们的数据目录。
爬虫可以在一次运行中爬取多个数据存储。在爬取完成后,我们会在数据目录中看到由爬虫创建的一个或多个表。
创建表后,我们就可以在接下来的Athena查询或ETL作业中使用表来作为源或目标了。

步骤图例
1、入口在这里插入图片描述
2、输入爬虫名称在这里插入图片描述
3、选择数据源类型(Data Stores:创建,Existing catalog tables:更新) 选择爬取类型(Crawl all folders:爬取全部文件夹,Crawl new folders only:只爬取新文件夹,Crawl changed folders indentified by Amazon S3 Event Notifications:只爬取S3事件通知的有变更的文件夹)在这里插入图片描述
4、选择s3 (可对s3中的需要爬取的数据进行筛选)在这里插入图片描述
5、创建或选择爬网程序IAM角色(需要有对应S3与Glue的权限)在这里插入图片描述
6、对于不确定的实时数据或许要定时更新的数据,可按需选择频率;若只需创建表结构,可选择按需运行在这里插入图片描述
7、确认在这里插入图片描述

此时,数据库与爬网程序已准备完毕。
我们将会运行爬网程序自动分析数据结构并创建表。

1.4 创建表

如果对待爬取数据结构未知,或者结构复杂、字段繁杂,则使用“爬网程序创建表”;对于对待爬取数据结构清晰明了的,可以使用“手动创建表”模式。

1.4.1 爬网程序创建表

步骤图例
1、运行                         在这里插入图片描述
2、运行中在这里插入图片描述
3、运行完毕在这里插入图片描述
4、运行结果在这里插入图片描述
5、表结构在这里插入图片描述

1.4.2 手动创建表

步骤图例
1、入口在这里插入图片描述
2、表名在这里插入图片描述
3、数据源在这里插入图片描述
4、选择文件类型在这里插入图片描述
5、手动创建表需要自定义列;请根据提示创建在这里插入图片描述
6、一直下一步即可

1.5 Athena查询

Athena是一种交互式查询服务(不是数据库)。并且Athena可以使用标准SQL直接查询S3中的数据,前提是需要使用Glue连接S3源。Athena还支持查询如DynamoDB、Redshift、MySQL等数据库。

步骤图例
1、入口在这里插入图片描述
2、设置查询结果存储位置:s3在这里插入图片描述在这里插入图片描述
3、查看表,可查看数据库以及其中的表在这里插入图片描述
4、查询结果:使用sql查询在这里插入图片描述

1.6 总结

在此实验中,我们使用Glue 的爬网程序自动解析存储在s3桶中的原始数据,自动创建了表。通过Glue数据库中的表,我们可以使用Athena对表进行查询(Athena每次检索表对应的s3桶数据,按检索量收费)。接下来我们会对原始数据进行转换、清洗以及分区操作,以及使用API Gateway+Lambda实现一个无服务架构,通过API查询数据。


http://www.niftyadmin.cn/n/5238345.html

相关文章

二维码智慧门牌管理系统升级:高效管控门牌贴牌过程

文章目录 前言一、升级方案:门牌贴牌过程管理二、系统优势 前言 随着城市化进程的加速,门牌数量的迅速增加使得门牌管理变得日益重要。传统的管理方式存在着管理效率低下和信息更新滞后等问题,难以满足现代城市管理的需求。为了解决这些问题…

四层LVS与七层Nginx负载均衡的区别

一、四层负载均衡与七层负载均衡: (1)四层负载均衡: 四层负载均衡工作在 OSI 七层模型的第四层(传输层),指的是负载均衡设备通过报文中的目标IP地址、端口和负载均衡算法,选择到达的…

【mysql】基于binlog数据恢复指令和坑

文章目录 1.binlog相关配置是否开启binlogbinlog日志格式 2.导出binlog日志mysqlbinlog指令updateinsertdeletebinlog中的事件 3.数据恢复4.特别注意的坑为什么bash脚本执行mysqlbinlog,无法找到指令为什么执行mysqlbinlog,无法数据恢复 1.binlog相关配置…

浅谈对ASP.NET MVC(微软Web开发框架)的理解

今天来总结下y2扩展就业的课程使用asp.netmvc开发企业级应用自学成果。首先ASP.NET是Microsoft公司.NetFramwork框架的一个动态网页开发的核心技术集,他可以帮助.net方向的动态web开发人员快速高效制作动态网页交互,同样支持jquery,js和h5c3&…

人工智能的新篇章:深入了解大型语言模型(LLM)的应用与前景

项目设计集合(人工智能方向):助力新人快速实战掌握技能、自主完成项目设计升级,提升自身的硬实力(不仅限NLP、知识图谱、计算机视觉等领域):汇总有意义的项目设计集合,助力新人快速实…

【shell】正则表达式和AWK

一.正则表达式 通配符匹配文件(而且是已存在的文件) 基本正则表达式扩展正则表达式 可以使用 man 手册帮助 正则表达式:匹配的是文章中的字符 通配符:匹配的是文件名 任意单个字符 1.元字符(字符匹配&…

电商产品经理常用的ChatGPT通用提示词模板

电商产品规划和策略:请帮助我规划和制定电商产品的策略和计划,包括市场调研、用户需求分析、产品定位、竞争对手分析等方面的内容,以便我能够更好地把握市场机会并制定相应的发展策略。 电商产品设计和开发:请帮助我进行电商产品…

无人机智慧工地:助力工地管理的未来之选

在现代工地管理中,无人机凭借其小巧、轻便和多角度拍摄等特点得到广泛应用,尤其在智慧工地的现场管理中发挥着重要作用。 一、无人机代替人工巡检省时省力 以往,施工现场检查主要依赖人工巡检方式,需要较长时间。而现在&#xff…