AWS Glue 与 Amazon EMR

哪个平台适合您?

AWS 是全球最大的公有云和私有云数据中心提供商。作为其大数据处理产品组合的一部分,AWS 开发了 Glue 和 Amazon EMR。AWS Glue 是一种提取、转换、加载 (ETL) 工具,可帮助数据科学家通过 Amazon S3 操作和移动数据。

Amazon EMR 是 Amazon Elastic MapReduce 的缩写,是一个大数据处理、实时数据流、SQL 查询和机器学习平台。EMR 可用于执行和扩展 Apache Spark 集群以及其他大数据引擎。

虽然这两种工具都提供 ETL 处理功能,但您选择哪一种将高度依赖于您当前的基础设施。让我们探索 AWS Glue 与 EMR,以便您可以决定是同时使用这两个平台还是选择其中一个适合您的业务。


什么是 AWS Glue 图形

什么是 AWS Glue?


AWS Glue是 AWS 云上提供的无服务器数据集成服务。该平台旨在帮助数据分析师发现不同来源的数据,将数据准备成多种格式和模式,并使用数据映射组合数据集。AWS Glue 可与数据库、数据湖和数据仓库源等一系列数据存储配合使用。

由于为非技术用户提供了可视化界面,同时为技术用户提供了更强大的基于代码的界面,因此 ETL 工作流的入门门槛降低了。AWS Glue 的所有元数据都存储在 AWS Glue 数据目录中,这意味着任何用户都可以找到并访问相关数据集。


什么是 Amazon EMR?


Amazon Elastic MapReduce (EMR)是一个大数据平台。它通过 Apache Spark 和其他分析引擎支持人工智能和机器学习工作负载的实时数据流。这是通过可扩展的数据管道实现的,这些管道从源提取数据并将其传送到目标。EMR 中的大规模预测分析和统计模型也可用于帮助发现趋势和相关性。

EMR 的优势包括 PB 级可扩展性,成本仅为本地部署的一半,并且分析工作负载的洞察时间最多可提高两倍。EMR Studio 可用于构建数据管道、可视化数据流和执行 SQL 查询。

什么是 Amazon EMR 图形

AWS Glue 与 EMR 比较


AWS Glue 和 EMR 均能够支持 ETL 流程和工作流。但是,这两项服务的运行方式存在一些根本差异。

无服务器与托管服务

AWS Glue 是一个无服务器数据集成平台,可处理基础设施、配置选项和设置。它可以处理结构化和半结构化数据格式,以自动推断架构引用。

Amazon EMR 是针对自配置基础设施(例如 Amazon EC2 实例或集群)的托管服务覆盖。EMR 还提供专用的无服务器选项。EMR 支持 Apache Hadoop 生态系统组件(例如 Spark、Hive、HBase 和 Presto),并将数据存储在 Amazon Athena、Amazon Redshift 和其他大数据分析解决方案中。

总而言之,AWS Glue 是一个可扩展的 ETL 平台,易于设置和使用。但是,它的易用性也存在局限性,因此更适合具有更灵活基础设施要求的作业。Amazon EMR 具有更丰富的功能集,包括 Hadoop 组件托管兼容性、TensorFlow 机器学习库和 Presto SQL 查询。Glue 适用于更简单的数据 ETL 和集成工作流,而 EMR 是一个更全面的数据操作托管服务平台。

费用、运营成本和定价

与大多数云服务一样,它为您提供的功能越多,价格就越高。AWS Glue 是一个无服务器平台,这意味着您可以忽略基础设施部署和配置,而专注于 ETL 工作流程。

EMR 利用现有数据源来促进 SQL 查询、数据流和其他 ETL 流程。这样可以降低成本,因为数据部署和配置负担由您承担。这些较低的成本可以通过支付员工配置和部署 EMR 的费用以及每个附带 AWS 服务的额外运营费用来抵消。

您可以使用AWS 定价计算器比较您预期使用案例的每项服务的成本。

性能限制

截至 2022 年 4 月,AWS Glue 最大的工作程序类型是 G.2X。它的执行程序内存上限为 32GB,这意味着解压高度压缩的文件可能会导致“内存不足”错误。而 EMR 可以使用任何 AWS 实例类型,允许更大的 RAM 分配,最高可达 24 兆兆字节 (TiB)。


AWS Glue 和 EMR 的使用案例和场景


对于那些在云中大规模存储数据的人来说,使用分布式计算引擎、云原生数据库和数据仓库是有益的。Amazon EMR 和 AWS Glue 是组织可以用来实现这一目标的两种服务。让我们探讨另外两种 Glue 作业或 EMR 可能更适合单独使用的场景。

新的数据工作流、测试环境或沙盒


如果您正在测试全新的数据工作流程,AWS Glue 可能是更好的选择。它允许您跳过基础设施的配置和部署,只需执行数据工作流程即可。Glue 的随用随付 (PAYG) 特性几乎不会浪费开支。

为测试环境和一次性工作流配置 EMR 集群会增加工作量,而对业务几乎没有好处。唯一的问题是 Glue 与数据源的兼容性。相比之下,EMR 使用所有 AWS 实例类型提供了更大的灵活性。


大数据处理和机器学习


对于大数据处理或机器学习工作负载,EMR 可能是一个更好的选择,因为它具有灵活性。它可以安全可靠地处理机器学习、深度学习、数据 ETL 和实时流分析。

Glue 更专注于提取、转换和加载 (ETL) 操作。它可以执行机器学习转换,但由于处理和写入窗口持续 100 秒,因此对于实时流分析有很多限制。Glue Schema 检测还会禁用流数据连接操作,仅支持内置的 Glue 转换或 Apache Spark Structured Streaming 转换。


AWS Glue 与 EMR 总结


AWS Glue 和 Amazon EMR 是类似的平台,区别在于它们的简单性和灵活性。AWS Glue 是一种在云中执行 ETL 作业的快速、省力的方法。EMR 是一种更强大、功能更丰富的大数据处理解决方案,它使用现有基础设施为 ML 工作负载提供 ETL 和实时数据流。EMR 的灵活性带来了管理负担,但由于避免了无服务器功能,因此通常比 Glue 的成本更低。

最终,Amazon EMR 适用于小规模和大规模数据操作,而 Glue 则更加临时,适合小批量作业。但是,由于它们的用途不同,您可能会发现两种工具都用到 — Glue 用于需要快速完成的临时任务,而 EMR 用于长期、大规模分布式数据处理作业。

想要了解有关 ETL 迁移的更多信息?

了解 Trianz 如何将从旧数据库和现有 ETL 工具到 AWS Glue 的迁移时间缩短多达 50%。

了解有关 AWS Glue 的更多信息

体验 Trianz 的与众不同

Trianz 通过有效的战略和卓越的执行力实现数字化转型。我们与业务和技术领导者合作,通过提供最佳的咨询、技术经验和执行模式,帮助制定和执行运营战略,以实现预期的业务成果。

凭借知识、研究和观点,我们帮助客户利用基础设施、云、分析、数字和安全范例来转变其业务生态系统并实现卓越绩效。联系我们或了解更多信息。

×

Get in Touch

Let us help you
transform and grow


By submitting your information, you agree to our revised  Privacy Statement.