为什么选择 Glue?
使用 AWS Glue 时,您需要按小时费率(按秒计)为爬网程序(发现数据)和提取、转换、加载(ETL)任务(处理和加载数据)付费。对于 AWS Glue Data Catalog,您需要为元数据的存储和访问支付简单月度费用。前 100 万个对象的存储和前 100 万次访问都是免费的。如果您预置了开发终端节点并以交互式方法开发 ETL 代码,那么您需要按小时费率付费 (按秒计)。对于 AWS Glue DataBrew,交互式会话按每次会话计费,DataBrew 作业按每分钟计费。用户可免费使用 AWS Glue Schema 注册表。
注意:定价可能因 AWS 区域而异。
-
ETL 作业和交互式会话
-
数据目录
-
爬网程序
-
DataBrew 交互式会话
-
DataBrew 作业
-
数据质量
-
ETL 作业和交互式会话
-
定价示例
ETL 任务:考虑一个运行 15 分钟并使用 6 DPU 的 AWS Glue Apache Spark 任务。1 个 DPU 小时的价格为 0.44 USD。由于您的任务运行了 1/4 小时并使用了 6 个 DPU,AWS 将向您收取 6 DPU * 1/4 小时 * 0.44 USD,即 0.66 USD。
AWS Glue Studio Job Notebooks 和交互式会话:假设您使用 AWS Glue Studio 中的一个笔记本来交互式开发 ETL 代码。一个交互式会话默认有 5 个 DPU。如果您让该会话运行了 24 分钟(即一小时的 2/5),则您需要支付的费用为 5 个 DPU * 2/5 小时 * 0.44 USD/DPU 小时,即 0.88 USD。
ML 转换:与 AWS Glue 作业运行类似,在您的数据中运行 ML 转换(包括 FindMatches)的成本将因数据大小、数据内容和所使用的节点数量和类型而异。在以下示例中,我们使用 FindMatches 来整合不同数据来源中的兴趣信息。数据集大小约为 11000000 行(1.6GB),标记数据(例如真匹配或真不匹配数据)大小约为 8000 行(641KB),且在 16 个 G.2x 类实例中运行时,34 分钟标签集生成运行时间的成本为 8.23 USD,11 分钟指标估计运行时间的成本为 2.66 USD,而 32 分钟 FindingMatches 作业执行运行时间的成本为 7.75 USD。
-
数据目录
-
定价示例
AWS Glue Data Catalog 免费套餐:让我们假设您在给定月份在 Data Catalog 中存储了 100 万个表格,并对这些表格发出了 100 万个访问请求。在这种情况下,您无需支付任何费用,因为您使用的资源均包含在 AWS Glue Data Catalog 免费套餐中。您每月可免费存储 100 万个对象和发出 100 万个请求。
AWS Glue Data Catalog:现在来假设您每月仍存储了 100 万个表格,但您每月发出的请求数翻了一番,即 200 万个。假设您还使用了爬网程序来发现新表格,它们运行了 30 分钟,并使用了 2 个 DPU。
您的存储费用仍然为 0 USD,因为您存储的前 100 万个表格是免费的。您的前 100 万个请求也是免费的。您将需要为超出免费套餐的 100 万个请求付费,即 1 USD。爬网程序的费用为每个 DPU 小时 0.44 USD,因此您需要为其支付的费用为 2 个 DPU * 1/2 小时 * 0.44 USD/DPU 小时,即 0.44 USD。
如果您在 Glue 表上生成统计信息,并且统计信息运行需要 10 分钟并消耗 1 个 DPU,您将需要支付 1 DPU * 1/6 小时 * 0.44 USD/DPU 小时(等于 0.07 USD)的费用。
如果您压缩 Apache Iceberg 表,并且压缩运行 30 分钟并消耗 2 个 DPU,您将需要支付 2 个 DPU * 1/2 小时 * 0.44 美元/DPU 小时(等于 0.44 USD)的费用。 -
爬网程序
-
-
DataBrew 交互式会话
-
定价示例
AWS Glue DataBrew:每个 30 分钟交互式会话的价格为 1.00 USD。如果您在上午 9:00 开始一个会话,然后立即离开控制台,并从上午 9:20-9:30 开始返回,这样将会使用 1 个会话,总费用为 1.00 USD。
如果您在上午 9:00 开始一个会话并与 DataBrew 控制台互动到上午 9:50,然后退出 DataBrew 项目空间,并在上午 10:15 返回进行最后的互动,这样将会使用 3 个会话,每个会话将收取 1.00 USD,总共收取 3.00 USD。
-
DataBrew 作业
-
定价示例
AWS Glue DataBrew:如果 DataBrew 作业运行 10 分钟并使用 5 个 DataBrew 节点,则价格为 0.40 USD。由于您的作业运行了 10 分钟(即一小时的 1/6)并使用了 5 个节点,您需要支付的费用为 5 个节点 * 1/6 小时 * 0.48 USD/节点小时,共 0.40 USD。
-
数据质量
-
AWS Glue 数据质量自动监测功能通过帮助您实现高数据质量,让您对数据建立信心。它会自动测量、监控和管理数据湖和管道中的数据质量,让发现缺失、过时或损坏的数据变得更容易。
您可以通过 AWS Glue API,从 Data Catalog 和 AWS Glue Studio 访问数据质量功能。
管理数据目录中编目数据集数据质量的定价:您可以从数据目录中选择一个数据集并生成建议。此操作会为您将要预配的数据处理单元(DPU)生成一个建议任务。获得建议后,您可以修改或添加新规则并为其安排时间。这些任务称为“数据质量任务”,您需要为它们预配 DPU。您将需要至少 2 个 DPU,最短计费时长为 1 分钟。
管理在 AWS Glue ETL 上处理的数据集的数据质量的定价:您还可以向 ETL 作业添加数据质量检查,避免将损坏数据输入到数据湖中。这些数据质量规则会驻留在您的 ETL 作业中,导致运行时间增加或占用更多 DPU。或者,您可以对非 SLA 敏感型工作负载使用灵活执行。
在 AWS Glue ETL 中检测异常的定价:
异常检测
除了检测异常所需时间的 ETL 作业 DPU 外,每个统计数据还将产生 1 个 DPU。平均而言,检测 1 个统计数据的异常需要 10-20 秒。假设您配置了两条规则(规则 1:数据量必须大于 1000 条记录,规则 2:列数必须大于 10)和一个分析器(分析器 1:监控列的完整性)。此配置将生成三个统计数据:行数、列数和列的完整性百分比。您需要为检测异常所需的时间(最少 1 秒)额外支付 3 个 DPU 的费用。有关更多详细信息,请参阅示例 4。
重新训练:
您可能希望排除异常作业运行或统计数据,以便异常检测算法准确预测后续异常。为此,AWS Glue 允许您排除或包含统计数据。在重新训练模型所需的时间内,您将产生 1 个 DPU,用于进行重新训练。 平均而言,重新训练每个统计数据需要 10 秒到 20 分钟。有关更多详细信息,请参阅示例 5。
统计数据存储:
存储收集的统计数据不收取任何费用。每个账户的统计数据上限为 10 万个,并将存储 2 年。
额外费用:
AWS Glue 直接从 Amazon Simple Storage Service(Amazon S3)处理数据。使用 AWS Glue 读取数据无需额外支付存储费用。您将按标准 Amazon S3 费率支付存储、请求和数据传输费用。根据您的配置,临时文件、数据质量结果和随机文件存储在您选择的 S3 存储桶中,也是按照标准的 S3 费率收费。
如果您使用的是数据目录,则需要按标准 Data Catalog 费率支付费用。请选择数据目录存储和请求选项卡,了解详细信息。
定价示例
示例 1 — 获取对 Data Catalog 中的表的建议例如,假设有一个拥有 5 个 DPU 的建议任务在 10 分钟内完成。您需要支持 5 个 DPU * 1/6 小时 * 0.44 USD,等于 0.37 USD。
示例 2 — 估算 Data Catalog 中的表的数据质量查看建议后,您可以进行编辑(如必要),然后通过预置 DPU 为数据质量任务安排时间。例如,假设有一个拥有 5 个 DPU 的数据质量评估任务在 20 分钟内完成。
您需要支持 5 个 DPU * 1/3 小地 * 0.44 美元,等于 0.73 美元。
示例 3 – 估算 AWS Glue ETL 任务中数据质量的费用您还可以向 AWS Glue ETL 任务添加上述数据质量检查,避免将损坏数据输入到数据湖中。您可以通过在 AWS Glue Studio 上添加数据质量转换,或在 AWS Glue Studio 笔记本中编写的代码中使用 AWS Glue API 来进行此操作。假设有一个 AWS Glue 在运行,其中的数据质量规则被配置在管道内,使用 6 个 DPU 执行 20 分钟(即 1/3 小时)。您需要支持 6 个 DPU * 1/3 小时 * 0.44 美元,等于 0.88 美元。您可以改为使用 Flex 选项,您需要支付 6 个 DPU * 1/3 小时 * 0.29 美元,等于 0.58 美元。
示例 4 — 使用异常检测评估 AWS Glue ETL 作业中的数据质量
假设有一个 AWS Glue 作业,该作业从 Amazon S3 读取数据、转换数据并在加载到 Amazon Redshift 之前运行数据质量检查。假设此管道有 10 条规则和 10 个分析器,因此收集了 20 个统计数据。此外,假设提取、转换过程、加载、统计数据收集、数据质量评估将花费 20 分钟。如果未启用异常检测,则将向客户收取 6 个 DPU * 1/3 小时(20 分钟)* 0.44 美元,相当于 0.88 美元(A)。启用异常检测后,我们将为每个统计数据添加 1 个 DPU,平均需要 15 秒才能检测到异常。在此示例中,客户将产生 20 个统计数据 * 1 个 DPU * 15/3600(0.0041 小时/统计数据)* 0.44 美元(每个 DPU/小时的成本)= 0.037 美元(B)。他们完成这项工作的总成本为 0.88 美元(A)+ 0.037 美元(B)= 0.917 美元。
示例 5 — 重新训练假设您的 Glue 作业检测到了异常。您决定从模型中排除异常,以便异常检测算法能够准确预测未来的异常。为此,您可以通过排除此异常统计数据来重新训练模型。在重新训练模型所需的时间内,每个统计数据将产生 1 个 DPU。平均而言,这可能需要 15 秒。在此示例中,假设您排除 1 个数据点,则将产生 1 个统计数据 * 1 DPU * 15/3600(0.0041 小时/统计数据)* 0.44 美元 = 0.00185 美元。
注意:定价可能因区域而异。
查看全球区域表,详细了解 AWS Glue 的可用情况。