面向初学者的 Amazon EMR (Elastic MapReduce) 简介

如今,计算能力正处于顶峰,并且还在继续增长。 在过去的三十年里,机器已经发展和改进了很多,特别是在处理能力和多任务处理方面。

您能否想象如果任务在多台机器之间共享并并行执行,性能提升会有多疯狂? 这称为分布式计算。 这就像计算机的团队合作。

但是,您可能想知道为什么我们要讨论这个分布式计算问题。 因为分布式计算和 亚马逊电子病历 (Elastic MapReduce)高度相关。 即EMR by AWS利用分布式计算原理在云端处理和分析大量数据。

借助 Amazon EMR,您现在可以在 S3 实例上使用您选择的分布式处理框架来分析和处理大数据。

Amazon EMR 的工作原理是什么?

来源: aws.amazon.com

首先,将数据输入任何数据存储,例如 Amazon S3、DynamoDB 或其他 AWS 存储平台,因为它们都与 EMR 集成良好。

现在,您需要一个大数据框架来处理和分析这些数据。 有多种大数据框架可供选择,例如 Apache Spark、Hadoop、Hive 和 Presto,您可以选择适合您需求的框架并将其上传到所选数据存储。

创建 EC2 实例的 EMR 集群来并行处理和分析数据。 您可以配置节点数量和其他详细信息来创建集群。

您的主存储将数据和框架分发到这些节点,其中数据块被单独处理,然后组合结果。

结果出来后,您可以终止集群以释放所有分配的资源。

Amazon EMR 的优势

企业,无论大小,总是考虑采用具有成本效益的解决方案。 那么为什么不购买价格实惠的 Amazon EMR呢? 当它可以简化在 AWS 上运行各种大数据框架时,提供一种便捷的方式来处理和分析数据,同时节省一些资金。

✅ 弹性:您可以通过术语“Elastic MapReduce”猜测其本质。 该术语表示 – 根据要求,Amazon EMR 允许您轻松手动或自动调整集群大小。 例如,您现在可能需要 200 个实例来处理您的请求,一两个小时后可能会达到 600 个实例。 因此,当您只需要可扩展性来适应需求的快速变化时,Amazon EMR 是最佳选择。

✅ 数据存储:无论是 Amazon S3、Hadoop 分布式文件系统、Amazon DynamoDB 还是其他 AWS 数据存储,Amazon EMR 都可以与其无缝集成。

✅ 数据处理工具:Amazon EMR 支持各种大数据框架,包括 Apache Spark、Hive、Hadoop 和 Presto。 最重要的是,您可以在此框架上运行深度学习和机器学习算法和工具。

✅ 经济高效:与其他商业产品不同,Amazon EMR 允许您只需为按小时使用的资源付费。 此外,您可以选择符合您预算的不同定价模型。

✅ 集群定制:该框架允许您定制集群的每个实例。 此外,您还可以将大数据框架与完美的集群类型配对。 例如,Apache Spark 和基于 Graviton2 的实例是优化 EMR 性能的致命组合。

✅ 访问控制:您可以利用 AWS Identity and Access Management (IAM) 工具来控制 EMR 中的权限。 例如,您可以允许特定用户编辑集群,而其他用户只能查看集群。

✅ 集成:将 EMR 与所有其他 AWS 服务无缝集成。 借助此功能,您可以在 EMR 中获得虚拟服务器的强大功能、强大的安全性、可扩展的容量和分析功能。

Amazon EMR 的用例

#1. 机器学习

使用 Amazon EMR 中的机器学习和深度学习来分析数据。 例如,在健康相关数据上运行各种算法来跟踪多种健康指标,例如体重指数、心率、血压、脂肪百分比等,这对于开发健身追踪器至关重要。 所有这些都可以在 EMR 实例上更快、更高效地完成。

#2. 执行大型转型

零售商通常会提取大量数字数据来分析客户行为并改善业务。 同样,Amazon EMR 将能够高效地提取大数据并使用 Spark 执行大型转换。

#3。 数据挖掘

您想要处理需要很长时间才能处理的数据集吗? Amazon EMR 专门用于复杂数据集的数据挖掘和预测分析,尤其是在非结构化数据情况下。 此外,其集群架构非常适合并行处理。

#4。 研究目的

使用名为 Amazon EMR 的经济高效的框架完成您的研究。 由于其可扩展性,您在 EMR 上运行大型数据集时很少会遇到性能问题。 因此,该框架非常适合大数据研究和分析实验室。

#5。 实时串流

Amazon EMR 的另一个主要优势是支持实时流。 使用 Amazon EMR 上的 Apache Kafka 和 Apache Flink 为在线游戏、视频流、流量监控和股票交易构建可扩展的实时流数据管道。

EMR 与 Amazon Glue 和 Redshift 有何不同?

AWS EMR 与 Glue

两项强大的 AWS 服务 – Amazon EMR 和 Amazon Glue 在处理数据方面赢得了忠实的评价。

使用 Amazon Glue 可以快速高效地从各种来源提取数据、转换数据并将其加载到数据仓库,而 Amazon EMR 可以帮助您使用 Hadoop、Spark、Hive 等处理大数据应用程序,

基本上,AWS Glue 可让您收集和准备数据以供分析,而 Amazon EMR 可让您处理数据。

EMR 与 Redshift

想象一下您自己不断地浏览数据并轻松查询它。 SQL 是您经常用来执行此操作的工具。 同样,Redshift 提供优化的在线分析处理服务,可以使用 SQL 轻松查询大量数据。

存储数据时,您可以使用 S3 和 DynamoDB 等第三方存储提供商访问高度可扩展、安全且可用的 Amazon EMR。 相比之下,Redshift 有自己的数据层,允许您以柱状格式存储数据。

Amazon EMR 成本优化方法

#1. 附带格式化数据

数据越大,处理时间就越长。 此外,将原始数据直接输入集群会使事情变得更加复杂,需要更多时间来找到您想要处理的部分。

因此,格式化数据附带有关列、数据类型、大小等的元数据,使用它可以节省搜索和聚合时间。

此外,通过利用数据压缩技术来减小数据大小,因为处理较小的数据集相对更容易。

#2. 使用经济实惠的存储服务

利用经济高效的主存储服务可以减少您的主要 EMR 支出。 Amazon s3 是一种简单且经济实惠的存储服务,用于保存输入和输出数据。 其即用即付模式仅针对您使用的实际存储空间收费。

#3。 正确的实例大小

使用具有适当大小的适当实例可以显着减少在 EMR 上花费的预算。 EC2 实例通常按秒计费,价格随其大小而变化,但无论您使用 0.7 倍大型集群还是 0.36 倍大型集群,管理它们的成本都是相同的。 因此,与使用多台小型机器相比,有效利用大型机器更具成本效益。

#4。 现货实例

竞价型实例是以折扣价购买未使用的 EC2 资源的绝佳选择。 与按需实例相比,这些实例更便宜,但不是永久性的,因为当需求增加时可以收回它们。 因此,这些对于容错来说是灵活的,但不适合长时间运行的作业。

#5。 自动缩放

它的自动缩放功能足以避免集群规模过大或过小。 这使您可以根据工作负载在集群中选择正确的实例数量和类型,从而优化成本。

最后的话

云和大数据技术永无止境,为您提供无尽的工具和框架供您学习和实施。 Amazon EMR 就是这样一个同时利用大数据和云的单一平台,因为它简化了运行大数据框架来处理和分析大数据。

为了帮助您开始使用 EMR,本文向您展示了 EMR 是什么、它有何优势、它的工作原理、它的用例以及具有成本效益的方法。

接下来,查看您需要了解的有关 AWS Athena 的所有信息。