AWS入门学习(1)——基础服务介绍


AWS介绍

Amazon Web Services (AWS) 是全球最全面、应用最广泛的云平台。其提供超过 200 项功能齐全的服务,功能涵盖从计算、存储和数据库等基础设施技术,到机器学习、人工智能、数据湖和分析以及物联网等新兴技术。我们可以选择适合作业的服务来获得最佳的成本和性能。

AWS基础服务介绍

S3:是一种对象存储服务,可将数据以对象形式存储在存储桶中。对象指的是一个文件和描述该文件的任何元数据,存储桶是对象的容器。要将数据存储在 Amazon S3 中,您需要先创建存储桶,然后指定存储桶名称和 AWS 区域 。然后,您将数据作为 Amazon S3 中的数据元上传到该存储桶。每个对象都带有密钥(或键名称),它是存储桶中对象的唯一标识符。S3 提供了一些额外的功能,例如,可以使用 S3 版本控制将对象的多个版本保持在同一个存储桶中,从而可以恢复意外删除或覆盖的对象。存储桶及其中的对象是私有的,可以使用存储桶策略、AWS Identity and Access Management (IAM) 策略等方式控制访问权限,以确保数据的安全访问。

EMR:EMR 是一个托管集群平台,可简化在AWS上运行大数据框架的过程,以处理和分析海量数据

EC2:用于启动一定数量的虚拟服务器,进行快速开发和部署应用程序

Glue:一项完全托管的 ETL平台,主要用于发现、组织、清理、验证和格式化数据,以便在数据仓库或数据湖中存储,使数据可用于搜索和查询。AWS Glue 由一个称为 AWS Glue Data Catalog的中央元数据存储库、一个自动生成 Python 或 Scala 代码的 ETL 引擎以及一个处理依赖项解析、作业监控和重试的灵活计划程序组成。AWS Glue 设计用于处理半结构化数据。它引入了一个称为动态帧 的组件,动态帧与 Spark DataFrame 之间可以进行转换,以便利用 Spark 转换来执行所需的分析;Glue 还提供了一组专为动态帧设计的高级转换,使用时可以获得更加灵活的架构。

VPC:VPC 是 EC2 的网络层。可以将 AWS 资源启动到您定义的虚拟网络中,这是一个在逻辑上隔离的区域,从而自定义启动 AWS 资源。

IAM: 是一项和 AWS 服务权限管理有关的服务,用于安全地控制对 AWS 服务的访问。借助 IAM,您可以集中管理用户、安全凭证(如访问密钥),以及控制用户和应用程序可以访问哪些 AWS 资源的权限。

Lambda:通过 Lambda ,可以将代码设置为自动从其他 AWS 服务触发,或者直接从任何 Web 或移动应用程序调用。

Step Functions:一种无服务器编排服务,可以将 Lambda 函数和其他 AWS 服务来构建业务关键型应用程序,通过一系列事件驱动来设定应用程序的工作流,确保应用程序按预期顺序运行。

Athena:一种交互式查询服务,让您能够轻松使用标准 SQL 分析 S3 中的数据。。

Quicksight : 一种快速的业务分析服务,可以实现可视化、执行临时分析。

Hello World

下面我们将通过如下一个简单的案例来熟悉各个组件的基本使用:

1、 创建2个csv文件并写入数据

2、 创建S3 Bucket,将其中1个csv文件上传至创建好的S3 Bucket

3、 创建并运行Glue爬网程序对步骤3的S3 Bucket中的数据进行爬取

4、 配置IAM的policy

5、 创建并运行Glue ETL job对数据进行数据处理,将数据落到业务指定的S3 Bucket

6、 创建并运行Glue爬网程序对步骤5的S3 Bucket中的数据进行爬取

7、 创建Lambda,当步骤2中创建的S3 Bucket中有上传对象事件触发时,自动运行步骤5中创建的Glue ETL job

8、 将另一个csv文件上传到步骤2的S3 Bucket,从而触发Glue ETL job重新读取和生成数据。通过Athena查询结果

 

AWS