AWS Glue数据集成工具解析

在当今的大数据时代,企业需要有效地管理和分析来自不同来源的大量数据。AWS Glue作为一种数据集成工具,通过提取、转换和加载(ETL)过程,帮助工程师为其他数据消费者准备数据。这种托管服务为企业提供了一种简单且成本效益高的方法,用于分类和管理企业中的大数据。它提供了一个数据集成工具,该工具可以格式化来自不同数据源的信息,并将其组织在一个中央仓库中,以便用于指导业务决策。

AWS Glue的工作原理

AWS Glue利用ETL作业从Amazon Web Services(AWS)提供的其他云服务中提取数据,并将其整合到数据湖数据仓库中。它使用应用程序编程接口(API)来转换提取的数据集以进行集成,并帮助用户监控作业。用户可以安排ETL作业或选择事件来触发作业。一旦启动,Glue提取数据,根据Glue自动生成的代码进行转换,并将数据加载到Amazon S3或Amazon Redshift中。然后,Glue将作业的元数据写入嵌入式AWS Glue数据目录中。

该服务可以自动在S3中的数据湖、Amazon Redshift中的数据仓库以及其他属于Amazon关系数据库服务的数据库中找到企业结构化或非结构化数据。Glue还支持在Amazon虚拟私有云(Amazon Virtual Private Cloud)中的Amazon弹性计算云(Amazon EC2)实例上运行的MySQL、Oracle、Microsoft SQL Server和PostgreSQL数据库。

然后,该服务在数据目录中对数据进行分析,这是一个包含所有数据资产的元数据存储库,包括表定义、位置和其他属性等详细信息。团队还可以使用Glue数据目录作为Amazon Elastic MapReduce应用程序的Apache Hive Metastore的替代品。

AWS Glue的配置转换属性

要将元数据加载到数据目录中,该服务使用Glue爬虫扫描原始数据存储并提取模式和其他属性。IT专业人员可以根据需要自定义爬虫。

AWS Glue的基本属性

Glue的基本属性如下:

  • 自动模式检测。Glue允许开发人员自动化爬虫以检索与模式相关的信息,并将其存储在数据目录中,然后用于管理作业。
  • 任务调度器。可以灵活地使用基于事件或按需触发器设置和调用作业。多个作业可以并行运行,用户可以指定作业之间的依赖关系。
  • 开发人员端点。开发人员可以使用它们来调试Glue并创建自定义读取器、写入器和转换器,然后可以将其导入到自定义库中。
  • 自动代码生成。ETL过程自动生成代码;唯一需要的输入是存储数据的位置/路径。代码要么是Scala,要么是Python。
  • 集成数据目录。这是一个独特的元数据存储库,用于AWS管道中来自不同来源的数据。一个AWS账户有一个目录。

使用Glue的优势和劣势

使用AWS Glue的优势包括:

  • 容错性。Glue中的失败作业可以被检索,Glue中的日志可以被调试。
  • 过滤。不良数据过滤器。
  • 支持支持。它支持几个非原生Java数据库连接(JDBC)数据源。
  • 维护和部署。由于AWS完全管理该服务,因此维护和部署变得容易。

AWS Glue的缺点包括:

  • 有限的兼容性。虽然AWS Glue与几个常用的数据源兼容,但它仅与在AWS上运行的服务兼容。如果资源不是基于AWS的,组织可能需要第三方ETL服务。
  • 没有增量数据同步。所有数据首先被安排到S3,因此Glue不是实时ETL作业的最佳选择。
  • 学习曲线。使用Glue的团队应该对Apache Spark有很好的了解。
  • 关系数据库查询。Glue对传统关系数据库查询的支持有限,仅支持SQL查询。

AWS Glue的实际应用案例

1. 提高速度和降低成本

金融是一家专门从事与产品相关的金融服务的技术公司。这些产品在东南亚的金融服务公司中非常有用。其总部位于印度尼西亚雅加达。她想要提升和转变日常的ETL作业。该公司选择了许多其他解决方案,但找不到理想的解决方案来满足需求。最终,他们决定使用AWS Glue,这得到了回报,因为团队可以轻松地加载数据、运行流程,并将其转换为Redshift上的下一个流程。它还允许公司加快流程并节省成本。这种结合不仅被证明更快、更有效,而且比经过验证的替代方案便宜得多。对于像金融这样的初创公司来说,节省成本是决定性因素之一。

2. 构建数据智能和分析平台

Burt公司是一家专门从事数据产品的初创数据公司,旨在转变新的在线媒体格局。它在纽约、柏林和瑞典哥德堡设有办事处。许多主要的在线媒体发布商使用Burt的数据智能和分析平台来了解和优化他们的在线营销策略。该平台必须具备有效的数据收集、处理、分析和决策能力以满足这些要求。因此,该公司决定使用AWS Glue、Amazon Redshift和Amazon Athena来满足这些要求。Burt通过集成Amazon Athena和AWS Glue,转变了他的数据分析和智能平台。结果,Burt能够提供满足客户要求的解决方案。

3. 优化网络安全环境

世界上最知名的品牌之一不需要介绍。它专门从事技术领域,特别是工业生产。西门子是一家总部位于德国慕尼黑的跨国公司。她想要用一个智能系统来对抗网络威胁。该系统预计会准备数据、分析数据并使用机器学习进行预测。该公司决定求助于Amazon Web Services以寻求解决方案。AWS专家建议使用Amazon Sage Maker、AWS Glue和AWS Lambda。AWS Glue在这一过程中发挥了关键作用。它是一个提取数据并帮助数据科学家轻松分类数据的工具。

ETL引擎

数据编目后,即可搜索并准备好进行ETL作业。AWS Glue包括一个ETL脚本推荐系统,用于生成Python和Spark代码(PySpark)以及一个用于运行作业的ETL库。开发人员可以通过自定义Glue库或使用AWS Glue控制台脚本编辑器中的PySpark代码编写ETL代码。

开发人员还可以导入自定义代码或PySpark库。此外,开发人员可以将现有ETL作业的代码上传到S3存储桶,然后创建一个新的Glue作业来处理代码。

计划和组织ETL作业

AWS Glue作业可以按计划运行。开发人员可以按至少五分钟的间隔安排ETL作业。AWS Glue无法处理流数据。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485