Amazon EMR 是行业领先的云大数据平台,可使用多种开放源代码工具处理大量数据,例如 Apache Spark、Apache Hive、Apache HBase、Apache Flink、Apache Hudi 和 Presto。Amazon EMR 通过自动执行耗时的任务(例如,预置容量和调优集群),可以轻松地设置、操作和扩展大数据环境。借助 EMR,您可以用不到传统本地解决方案一半的成本运行 PB 级分析,并且其速度比标准 Apache Spark 快 3 倍以上。 您可以使用 AWS Outposts 上的 EMR 在 Amazon EC2 实例上、在 Amazon Elastic Kubernetes Service (EKS) 集群上或在本地运行工作负载。
优势
易于使用
分析师、数据工程师和数据科学家可以使用 EMR Notebooks来进行协作、交互式探索,以及处理和直观呈现数据。可以简单地指定 EMR 应用程序的版本和要使用的计算类型。EMR 负责预置、配置和优化集群,以便您可以专注于运行分析。
成本低廉
EMR 的定价简单且可预测:您按每个实例费率为使用的每秒时间付费,最低按一分钟收取。您可以按低至每小时 0.15 USD 的价格启动一个 10 节点 EMR 集群。通过为临时工作负载选择 Amazon EC2 Spot、为长期工作负载选择预留实例,可以将实例成本节省 50-80%。您还可以使用 Savings Plans。
弹性
与本地集群要求严格的基础设施不同,EMR 可以将计算和存储分离,使您能够独立扩展每层并利用 Amazon S3 的分层存储。利用 EMR,您可以预置一个、数百个甚至数千个计算实例或容器来处理任何规模的数据。可以借助 Auto Scaling(Auto Scaling 根据使用率管理集群大小)自动增加或减少实例的数量,并且您只需要按实际使用量付费。
可靠
用于优化和监控集群的时间将会更少。EMR 针对云进行了优化,它还会持续监控您的集群,重新尝试失败的任务,并自动替换性能不佳的实例。集群高度可用,并且可以在节点发生故障时自动进行故障转移。EMR 提供最新的稳定开源软件版本,因此您无需管理更新和修复错误,这可以减少问题并让您轻松维护环境。
安全
EMR 会自动配置 EC2 防火墙设置以控制实例的网络访问权限,并且您可以在 Amazon Virtual Private Cloud (VPC) 中启动集群。服务器端加密或客户端加密可与 AWS Key Management Service 或您自己的客户管理的密钥一起使用。EMR 可以轻松启用其他加密选项(如传输中加密、静态加密和 Kerberos 强身份验证)。您可以使用 AWS Lake Formation 或 Apache Ranger 对数据库、表和列应用精细数据访问控制。
灵活
您可以完全控制您的 EMR 集群和单个 EMR 作业。您可以使用自定义 Amazon Linux AMI 启动 EMR 集群,并使用脚本轻松配置集群以安装其他第三方软件包。EMR 使您能够在运行中的集群上实时重新配置应用程序,而无需重新启动集群。 此外,您可以通过在 Docker 容器中指定库和运行时依赖项来自定义各个作业的执行环境,并将其与作业一起提交。
部署选项
Amazon EC2 上的 Amazon EMR
您可以在 Amazon EC2 上部署 EMR,并利用按需实例、预留实例和 Spot 实例。EMR 管理 EC2 实例的预置、管理和扩展。AWS 提供比任何其他云提供商都多的实例选项,允许您选择能够为您的工作负载提供最优性能或成本的实例。
Amazon EKS 上的 Amazon EMR
您可以根据需要在 Amazon Elastic Kubernetes Service (EKS) 上使用 EMR 运行 Apache Spark 作业,而无需预置 EMR 集群,从而提高资源利用率并简化基础设施管理。Amazon EKS 为您提供在 AWS 云或本地启动、运行和扩展 Kubernetes 应用程序所需的灵活性。利用 EKS 上的 Amazon EMR,您可以在所有应用程序之间共享计算和内存资源,并使用一组 Kubernetes 工具集中监控和管理您的基础设施。
AWS Outposts 上的 Amazon EMR
Amazon EMR 在 AWS Outposts 上可用,允许您像在云端一样,在本地环境中设置、部署、管理和扩展 EMR。AWS Outposts 可将 AWS 服务、基础设施和运营模式引入绝大部分数据中心、主机托管空间或本地设施。
使用案例
机器学习
使用 EMR 的内置机器学习工具(包括 Apache Spark MLlib、TensorFlow 和 Apache MXNet)来实现可扩展的机器学习算法,并使用自定义 AMI 和引导操作来轻松添加首选库和工具,以创建您自己的预测分析工具集。
点击流分析
使用 Apache Spark 和 Apache Hive 分析来自 Amazon S3 的点击流数据,以便细分用户、了解各种用户偏好,并投放更有效的广告。
实时流式处理
使用 Apache Spark Streaming 和 Apache Flink 实时分析来自 Apache Kafka、Amazon Kinesis 或其他流式数据源的事件,以在 EMR 上创建长期运行、高度可用且具有容错能力的流式数据管道。将转换后的数据集保留到 S3 或 HDFS,并将见解保留到 Amazon Elasticsearch Service。
交互式分析
EMR Notebooks 提供基于开源 Jupyter 的托管分析环境,可供数据科学家、分析师和开发人员准备并直观呈现数据、与同伴协作、构建应用程序,并执行交互分析。