关于AWS Glue,你不知道的事情
Amazon Glue因为许多公司开始使用托管的数据集成服务而受到欢迎。
ETL是将数据从源数据库转移到数据仓库的过程。由于其复杂性,ETL对于所有企业数据的实施是复杂且困难的。亚马逊推出了AWS Glue来解决这个问题。
ETL开发人员和数据工程师使用Glue构建、监控和运行ETL工作流程。
AWS Glue 是什么?
AWS Glue是一种无服务器数据集成服务,可以轻松查找、准备、移动和集成来自多个源的数据。这对于机器学习(ML)和分析非常有用。
它大大减少了准备数据进行分析所需的时间。它会自动查找和列出数据,生成Scala或Python代码以从源传输数据,并根据定时事件加载和转换作业。
这允许灵活的调度,并创建一个可按目标数据加载进行扩展的Apache Spark环境。此外,AWS Glue还提供了复杂的数据流监视和更改功能。AWS Glue是一个无服务器服务,简化了应用程序开发的复杂操作。
它允许快速集成多个有效的数据。它还可以快速解析和授权数据。
AWS Glue 用于什么?
了解在哪些地方使用Amazon Glue是很重要的。以下是您应该考虑的AWS Glue用途的几个示例。
- Amazon Glue是一种工具,可以在数据湖上运行无服务器查询。
- Amazon Glue是一个很好的入门工具。它在一个界面上使所有数据都可以访问,无需移动数据即可进行分析。
- Amazon Glue可用于了解您的数据资产。Amazon Glue使您可以使用数据目录搜索不同的AWS数据集。您还可以使用数据目录将数据保存在多个AWS服务上,同时保持一致的视图。
- 在构建事件驱动的ETL工作流程时,Glue可以提供帮助。通过调用AWS Lambda服务,您可以从Amazon S3执行ETL操作来调用Glue ETL任务。
- AWS Glue还可用于清理、验证、格式化和组织数据以存储在数据湖或数据仓库中。
AWS Glue 的组件
以下是AWS Glue的主要组件:
- 数据目录:此数据目录包含元数据和数据结构。
- 数据库:这是访问和创建源和目标数据库的关键。
- 表:在数据库中创建一个或多个可供目标和源使用的表。
- 爬虫和分类器:爬虫使用内置或自定义的分类来从源中检索数据。它在数据目录中创建/使用预定义的元数据表。
- 作业:这是执行ETL任务的业务逻辑。此业务逻辑由Apache Spark使用Python和Scala语言内部编写。
- 触发器:ETL触发器是一种设备,可以按需或在特定时间启动ETL作业的执行。
- 开发终端:这创建了一个环境,用于测试、开发和调试ETL作业脚本。
AWS Glue 的好处
以下是在工作场所或组织内使用AWS Glue的好处。
- AWS Glue通过爬虫扫描所有可用数据。
- 最终处理的数据可以存储在多个位置(Amazon RDS和Amazon Redshift、Amazon S3等)。
- 它是一种基于云的服务。无需在本地部署基础设施上花费资金。
- 由于它是无服务器ETL,因此是一种具有成本效益的选择。
- 它很快。它立即为您提供Python/Scala ETL代码。
AWS Glue的主要特点
Amazon Glue拥有您需要的所有功能,以便您集成数据,从而可以更好地洞察数据并利用您的知识在几分钟内取得新的进展,而不是几个月。以下是您应该了解的一些功能。
- 拖放界面: 拖放作业编辑器允许您创建ETL过程。AWS Glue将立即构建所需的代码来提取、转换和上传数据。
- 自动模式发现:您可以使用Glue服务创建连接到不同数据源的爬虫,它可以组织数据并提取相关信息。然后这些数据可以被用来通过ETL任务监控ETL过程。
- 作业调度: Glue可以根据需要使用,也可以按照预定的计划使用。调度器可以用于构建复杂的ETL流水线,建立任务之间的依赖关系。
- 代码生成:Glue弹性视图允许您轻松创建材料化视图,将来自不同数据源的数据组合和复制,而无需编写任何专有代码。
- 内置机器学习:Glue附带了一个内置的机器学习功能,称为“FindMatches”。它能够去重不完全相同的记录。
- 开发者终端点:如果您想积极开发您的ETL代码,Glue提供了开发者终端点,允许您修改、调试和测试它所创建的代码。
- Glue DataBrew:它是一个数据准备工具,可以被数据分析师和数据科学家使用,帮助他们清洁和规范化数据。它使用Glue DataBrew的活动和可视化界面。
AWS Glue定价如何工作?
AWS Glue charges 对爬虫(发现数据)和ETL作业(处理和加载数据)按秒计费。访问和存储AWS Glue数据目录的月度费用是一个简单的月度费用。
Amazon Glue的起价为0.44美元。您可以选择四个计划:
- ETL任务、开发终端点和其他ETL任务的费用为0.44美元
- 爬虫交互会话的费用为0.44美元
- DataBrew作业的起价为0.48美元
- 每月存储和对数据目录的请求费用为1.00美元
AWS不提供免费的Glue计划。每个小时的费用为0.44美元每个DPU。平均而言,每天的费用将为21美元。价格可能因居住地的不同而有所变化。
设置AWS Glue的步骤
数据目录可以用于快速查找和搜索多个AWS数据集,而无需移动数据。在数据被编目后,它们可以立即使用Amazon Athena和Amazon EMR进行查询和搜索。
- Amazon Redshift、Amazon S3、Amazon RDS和Amazon EC2上的数据库-发现您的数据,存储元数据,并使用AWS Glue数据目录进行发现
- AWS Glue数据目录-使用数据目录作为元数据的中央存储库来管理数据
- AWS Glue ETL-读取和写入元数据到您的数据目录
- Amazon Athena和Amazon Redshift、Amazon EMR、Amazon ETL-获取用于ETL、分析等的数据目录。
- Amazon QuickSight-使用Amazon QuickSight和其他business intelligence工具运行报告
如何设置AWS Glue?
首先,登录AWS管理控制台并打开IAM控制台。点击创建角色。然后在角色类型中,找到Glue,并选择权限。
我正在选择AWSGlueServiceRole用于一般AWS Glue Studio和AWS Glue权限,并选择AWS托管策略AmazonS3FullAccess以访问Amazon S3资源。