跳至主要内容

Amazon EMR

Amazon EMR 上的 Apache Spark

为什么选择 EMR 上的 Apache Spark?

借助 Amazon EMR,您可以利用 Apache Spark 和 Apache Iceberg 构建开放、支持事务处理的数据湖。我们这款经过性能优化的运行时与开源 Spark 完全兼容,执行速度比同类开源产品快达 4.5 倍,同时 Iceberg 写入性能也提升 2.7 倍。

EMR 支持 Apache Iceberg v3 和 Spark 4.0(预览版),使您能够利用 ACID 事务和架构演进等功能,同时支持 VARIANT 数据类型或半结构化数据的大规模处理,并符合 ANSI SQL 合规性,以确保数据完整性。无论您需要 EC2 的精细控制、EKS 的容器化扩展能力,还是 EMR Serverless 的简便性,Amazon EMR 都能为您提供速度、可靠性和数据完整性。 

功能和益处

    Amazon EMR 的性能优化版 Apache Spark 运行时可加速数据湖工作负载,其执行速度比开源同类产品快达 4.5 倍,同时保持 100% 的 API 兼容性。此项优化同样适用于 Apache Iceberg 操作,为既需要速度又需要可靠性的事务型数据湖提供快 2.7 倍的写入性能。

    通过支持 Apache Iceberg v3 和 Spark 4.0(预览版),EMR 提供包括 ACID 事务、架构演进、用于半结构化数据处理的 VARIANT 数据类型以及 ANSI SQL 兼容性在内的一系列高级功能。

    适用于 Spark 的 Amazon EMR 运行时会优化您的查询计划,使其完全在内存中运行,从而最大限度地提高硬件利用率。通过优化中间数据的处理流程,EMR 可缩短资源密集型机器学习工作负载的产出时间,从而帮助您更快地进行迭代。

    借助 SageMaker 融通式合作开发工作室和 EMR Studio 实现工作流程现代化,它们为 SQL、Python 和 Scala 提供集成开发环境。利用 Amazon Q 开发者版生成优化的 PySpark 代码,并实时排查复杂的执行计划(DAG)。与标准 Spark 不同,EMR 提供持久化 Spark 用户界面,即使在无服务器应用程序或临时集群终止后,您仍可分析并调试任务日志。这种持久性对于生产环境中的审计和持续性能调优至关重要。

    EMR Serverless 通过提供即开即用的笔记本体验,消除了运营障碍。您无需再进行集群的配置、扩展或管理。您将首选的开发环境(例如 Amazon SageMaker 融通式合作开发工作室或 JupyterLab)连接到 EMR Serverless 应用程序,然后开始查询。适用于 Spark 的 EMR 运行时可确保您的交互式代码以与生产管道相同的企业级速度执行。无论您是对数 PB 的 S3 数据进行临时数据探索,还是在执行复杂的特征工程任务,Amazon EMR 都能提供无缝、高性能的环境,以加速您最重要的数据科学工作流程。

    Apache Spark 升级代理可自动识别 PySpark 和 Scala 应用程序中的 API 变更和行为修改。工程师可以借助 MCP(模型上下文协议)兼容性直接从 SageMaker 融通式合作开发工作室或其选择的 IDE 启动升级。在升级过程中,代理将分析现有代码并提出具体变更建议,工程师可以在实施之前进行审核和批准。代理将通过数据质量验证来验证功能正确性。代理当前支持从 Spark 2.4 升级到 3.5,并在整个升级过程中保持数据处理的准确性。

使用案例

    借助 EMR 上的 Spark Streaming,使用和处理来自 Amazon KinesisApache Kafka 或其他数据流的实时数据。采用容错方式执行流分析,并将相应结果写入到 S3 或基于集群的 HDFS 中。

    EMR 上的 Apache Spark 包括适用于各种可扩展的机器学习算法的 MLlib,或者您也可以使用自己的库。通过在作业过程中在内存中存储数据集,Spark 可针对机器学习工作负载中常见的迭代查询提供出色的性能。您可以将 Notebook 实例与 Amazon EMR 上运行的 Apache Spark 集群连接,从而增强 Amazon SageMaker 的功能,通过 Amazon SageMaker Spark 轻松训练和托管模型。

    使用 Spark SQL 进行低延迟的 SQL 或 HiveQL 交互式查询。EMR 上的 Spark 可以利用 EMRFS,因此您可以临时访问 S3 中的数据集。此外,您可以通过 ODBC 和 JDBC 连接来使用 EMR Studio、EMR Notebooks、Zeppelin Notebooks 或 BI 工具。

客户成功案例

Yelp

Missing alt text value Yelp 的广告定位团队设计了一些预测模型来确定用户与广告互动的几率。通过使用 Amazon EMR 上的 Apache Spark 处理大量数据来训练机器学习模型,Yelp 提高了收入和广告点击率。

The Washington Post

Missing alt text value 《华盛顿邮报》使用 Amazon EMR 上的 Apache Spark 构建模型,为其网站的推荐引擎提供强大支持,从而提高读者的参与度和满意度。他们利用 Amazon EMR 与 Amazon S3 的完美连接,以近乎实时的方式更新模型。

Krux

Missing alt text value 作为用于管理客户信息的数据管理平台的一部分,Krux 使用 Apache Spark 运行许多机器学习和常规处理工作负载。Krux 结合使用临时 Amazon EMR 集群和 Amazon EC2 Spot 容量来节约成本,并将 Amazon S3 与 EMRFS 用作 Apache Spark 的数据层。

GumGum

Missing alt text value 图像内和屏幕内广告平台 GumGum 使用 Amazon EMR 上的 Spark 预测库存、处理点击流日志以及临时分析 Amazon S3 中的非结构化数据。Spark 的增强性能为 GumGum 节省了处理这些工作流程的时间和资金。

Hearst Corporation

Missing alt text value Hearst Corporation 是一家大型多元化媒体信息公司,客户可查看 200 多个网站上的内容。利用 Amazon EMR 上的 Apache Spark 流传输,Hearst 的编辑人员可以实时了解哪些文章反响良好以及哪些主题是热门话题。

CrowdStrike

Missing alt text value CrowdStrike 提供端点防护以防止出现违例。它们结合使用 Amazon EMR 和 Spark 来处理数百 TB 的事件数据,并将其汇总到主机上更高级别的行为描述中。通过这些数据,CrowdStrike 可以将事件数据汇集在一起并确定是否存在恶意活动。