跳至主要内容

AWS Glue

AWS Glue 功能

终止支持通知

从 2026 年 4 月 30 日起,AWS Glue for Ray 将不再向新客户开放。如果您想使用该功能,请在 2026 年 4 月 30 日之前注册。要了解与 AWS Glue for Ray 类似的功能,请浏览 Amazon EKS。单击此处了解更多信息。

为什么选择 Glue?

AWS Glue 是一项无服务器、可扩展的数据集成服务,它简化了发现、准备、移动和集成来自多个来源的数据以进行分析、机器学习和应用程序开发的工作。借助生成式人工智能助手,AWS Glue 提供了数据集成所需的全部功能,使您只需几分钟时间便可以获得数据见解并将数据投入使用,而不用耗时几个月。AWS Glue 无需设置或管理基础设施。您仅需为运行作业时所消耗的资源付费。

  

探索

全部打开

    AWS Glue Data Catalog 是您所有数据资产的永久元数据存储,且无论它们位于何处都将如此。数据目录包含表定义、作业定义、Schema 和其他控制信息,以帮助您管理 AWS Glue 环境。它会自动计算统计信息并注册分区,以便经济高效地针对您的数据进行查询。它还会维护一个全面的 schema 版本历史记录,以便您可以了解您的数据如何随着时间发生变化。

    AWS Glue 爬网程序连接到您的源或目标数据存储,通过分类器的优先级列表不断更新以确定您的数据架构,然后在 AWS Glue Data Catalog 中创建元数据。元数据存储在 Data Catalog 的表中,并在提取、转换、加载(ETL)作业的创建过程中使用。您可以按计划、按需运行爬网程序,也可以基于事件触发它们,以确保您的元数据是最新的。

    自动扩缩是 AWS Glue 中的一种无服务器功能,它可以根据工作负载动态地纵向扩展和缩减资源。使用自动扩缩时,仅在需要时将您的作业分配给工件。随着作业进展,进入高级转型过程,AWS Glue 将根据它对工作负载的拆分程度添加和删除资源。您不再需要担心过度预置资源,花费时间优化工作线程数量,或为闲置的工作线程支付费用。

准备

全部打开

    AWS Glue 可帮助您清理和准备数据以供分析,无需您成为 ML 专家。它的 FindMatches 功能可以删除重复,并找到互相之间不完全匹配的记录。例如,使用 FindMatches 工具查找您的餐厅数据库中的重复记录,例如一条记录是位于“121 Main St.”的“Joe's Pizza”,而另一条记录是位于“121 Main”的“Joseph's Pizzeria”。 FindMatches 会要求您将记录集标记为“匹配”或“不匹配”。 然后系统将会学习您将一对记录称为“匹配”的标准,并构建一个 ETL 作业,您可以使用它来查找数据库中的重复记录或匹配两个数据库中的记录。

    如果您选择通过交互方式开发 ETL 代码,AWS Glue 将提供开发端点,以供您编辑、调试和测试其为您生成的代码。您可以使用自己喜欢的集成式开发环境(IDE)或笔记本电脑。您可以编写自定义读取器、写入器或转换程序,并将它们作为自定义库导入到 AWS Glue ETL 作业中。您还可以使用并与其他开发人员共享我们的 GitHub 存储库中的代码。 AWS Glue 交互式会话是作业开发的一种无服务器功能,它简化了数据集成作业的开发。工程师还可以使用 IDE 或他们选择的笔记本交互式地探索、实验和处理数据。

    AWS Glue DataBrew 提供交互式、点击式可视化界面,使数据分析师和数据科学家等用户无需编写代码即可清理和标准化数据。您可以直接从数据湖、数据仓库和数据库(包括 Amazon Simple Storage Service(Amazon S3)、Amazon Redshift、Amazon Aurora 和 Amazon Relational Database Service(Amazon RDS))中轻松可视化、整理和标准化数据。您可以从超过 250 个内置转换中进行选择,以合并、转变和转置数据,并且可以通过将保存的转换直接应用于新传入的数据来自动执行数据准备作业。

    AWS Glue 敏感数据检测有助于您在数据管道和数据湖中定义、识别和处理敏感数据。一旦确定,您就可以通过编辑、替换或报告个人身份信息(PII)数据和其他被认为敏感的数据类型来修复敏感数据。AWS Glue 敏感数据检测简化了敏感数据的识别和屏蔽,包括 PII,如姓名、社会保障号码、地址、电子邮件和驾照。

    开发人员喜欢 Python,因为它易于使用且内置了丰富的数据处理库。他们希望使用熟悉的 Python 基元类型来处理大型数据集。AWS Glue for Ray 有助于数据工程师使用 Python 和热门的 Python 库来处理大型数据集。AWS Glue for Ray 使用 Ray.io,这是一种开源统一计算框架,可帮助将 Python 工作负载从单个节点扩展到数百个节点。AWS Glue for Ray 采用无服务器架构,因此无需管理基础设施。

    AWS Glue 可帮助您创建自定义视觉转换,以便您可以定义、重用和共享 ETL 逻辑。 借助 AWS Glue Custom Visual Transforms,数据工程师可以编写和共享特定于业务的 Apache Spark 逻辑,从而减少对 Spark 开发人员的依赖,并使 ETL 作业保持最新状态变得更加简单。这些转换适用于您 AWS 账户中的所有作业,无论是可视的还是基于代码的。

    AWS Glue 提供了生成式人工智能功能,以自动分析您的 Spark 作业和生成用来升级到更高版本的计划。这样就能够自动识别和更新脚本和配置,因此减少了保持 Spark 作业现代、安全和高性能时需要投入的时间和精力。

    AWS Glue 利用生成式人工智能快速识别和解决 Spark 作业中的问题。它会分析作业元数据、执行日志和配置,以提供根本原因分析和可操作的建议,从而将故障排查时间从几天缩短到几分钟。

集成

全部打开

    AWS Glue 交互式会话是作业开发的一种无服务器功能,它简化了数据集成作业的开发。通过 AWS Glue 交互式会话,数据工程师可以交互方式探索和准备数据。工程师还可以使用 IDE 或他们选择的笔记本交互式地探索、实验和处理数据。

    AWS Glue Studio 作业笔记本可以最少的设置在 AWS Glue Studio 中提供无服务器笔记本,以便开发人员可以快速入门。使用 AWS Glue Studio 作业笔记本,您可以访问 AWS Glue 交互式会话的内置界面,在其中将笔记本代码保存并计划为 AWS Glue 作业。

    AWS Glue 作业可以按计划、按需或基于事件进行调用。您可以并行启动多个作业,也可以跨作业指定依赖关系以构建复杂的 ETL 管道。AWS Glue 将处理所有的作业间依赖关系、筛选出不良数据并且在作业失败时进行重试。所有日志和通知都将推送到 Amazon CloudWatch,以便您可以从中心服务监控和获取提醒。 Amazon Managed Workflows for Apache Airflow(MWAA)是 Apache Airflow 的一项托管服务,让您可以使用当前熟悉的 Apache Airflow 平台来编排您的工作流程。使用 MWAA,您可以在复杂的 ETL 工作流中协调使用多种不同技术的多个 ETL 流程。

    AWS Glue 与广泛使用的开源版本控制系统 Git 集成。您可以使用 GitHubAWS CodeCommit 来维护对 AWS Glue 作业的更改历史记录,并应用现有的 DevOps 实践来部署它们。AWS Glue 中的 Git 集成适用于所有 AWS Glue 作业类型,无论是基于视觉对象还是代码。它包含与 GitHub 和 CodeCommit 的内置集成,还可以更简单地使用自动化工具(如 JenkinsAWS CodeDeploy)来部署 AWS Glue 作业。

    AWS Glue Flex 是一个灵活的执行作业类,您可以通过它将非紧急数据集成工作负载(如预生产作业、测试和数据负载)的成本降低高达 35%。AWS Glue 具有两个作业执行类:标准和灵活。标准执行类是需要快速启动作业和专用资源的时间敏感型工作负载的理想之选。AWS Glue 灵活执行类适合于开始和完成时间可能不同的非时效性作业。

    AWS Glue 原生支持三个开源框架,包括 Apache Hudi、Apache Iceberg 和 Linux Foundation Delta Lake。这些框架可帮助您以事务一致的方式管理数据,以便在基于 Amazon S3 的数据湖中使用。

    AWS Glue 数据质量自动监测功能可帮助您提高数据质量和信心。它会自动测量、监控和管理数据湖和管道中的数据质量。它还会自动计算统计数据、推荐质量规则、监控质量并在质量下降时向您发出警报,从而在影响您的业务之前更轻松地识别丢失、陈旧或不良数据。

    AWS Glue 5.0 及更高版本为访问 Apache Iceberg、Apache Hudi 和 Delta 表的 Apache Spark 作业提供了表、列和行级别权限的访问控制,以帮助简化事务性数据湖的安全性和治理。

    Amazon Redshift 针对自管理数据库来源的零 ETL 功能无需构建和管理复杂数据管道即可对 PB 级事务数据使用各种分析功能。数据写入自管理的 Oracle、SQL Server、MySQL 或 PostgreSQL 数据库后几分钟便会复制到 Amazon Redshift。您可以对选定的数据库和表应用数据筛选条件,以便将您的数据复制到 Amazon Redshift。这使您可以根据自己的特定需求定制复制。在此处了解更多信息。

    AWS Glue 提供零 ETL 集成,它可将多个数据来源连接到您的分析环境。您可以将来自 DynamoDB、SaaS 企业应用程序(如 Salesforce、SAP 和 ServiceNow)以及自管理数据库(包括 Oracle、MySQL、SQL Server 和 PostgreSQL)的数据集成到您的 Amazon Redshift 数据仓库或 Amazon SageMaker 数据湖仓中。零 ETL 集成消除了构建、运行和维护传统数据管道所涉及的复杂性。在源位置所做的更改会在几分钟内复制,从而确保您的数据始终保持最新状态,无需人工干预。通过零 ETL 集成,您能够获得更新的数据,用于分析、人工智能/机器学习应用以及报告,从而实现更快的洞察和更及时的决策。

转型

全部打开

    使用 AWS Glue Studio,您可以编写高度可扩展的 ETL 作业来进行分布式处理,而无需成为 Apache Spark 专家。在拖放作业编辑器中定义您的 ETL 过程,AWS Glue 可自动生成代码以提取、转换和加载您的数据。它使用 Scala 或 Python 语言生成代码,并针对 Apache Spark 环境对代码进行编写。

    通过 AWS Glue 中的 Amazon Q 数据集成功能,使用自然语言创建 ETL 作业。只需描述您的数据转换需求,即可获得自动生成的 Apache Spark 代码,您可以自定义和测试此代码并将其作为生产作业进行部署。

    AWS Glue 中的无服务器流 ETL 作业将持续使用流媒体源中的数据,包括 Amazon Kinesis 和 Amazon MSK,动态清理和转换数据,并在目标数据存储中在数秒钟内将其用于分析。使用此功能可以处理 IoT 事件流、点击流和网络日志等事件数据。AWS Glue 流式 ETL 作业可以丰富和聚合数据,加入批处理和流数据源,并运行各种复杂的分析和机器学习操作。

优化

全部打开

    AWS Glue Data Catalog 支持所有压缩策略:binpack、sort 和 z-order。虽然 binpack 压缩策略通过优化文件大小来提高性能,但排序压缩可通过减少文件扫描来提高查询执行的效率,而 z-order 可以实现多维文件修剪。

    AWS Glue Data Catalog 支持快照保留优化器,该优化器仅保留需要的快照,并删除旧的、不必要的快照及其相关底层文件,从而帮助管理存储开销。

    AWS Glue Data Catalog 支持定期识别和移除不必要的未引用文件,从而释放存储空间。

    AWS Glue Data Catalog 支持计算和更新 Iceberg 表中每一列的非重复值的数量(NDV),从而为处理大规模数据集的数据工程师和科学家提供更好的查询优化、数据管理和性能效率。

    AWS Glue Data Catalog 支持 Parquet、ORC、JSON、ION、CSV 和 XML 等数据格式的列级统计数据。AWS 分析服务(如 Amazon Redshift 和 Amazon Athena)可使用这些列统计数据生成查询执行计划,并选择可提高查询性能的最佳计划。