使用RAPIDS在亚马逊云将Apache Spark加速5倍
关键字: [Amazon Web Services re:Invent 2024, 亚马逊云科技, Accelerate Batch Data Processing, Apache Spark Gpu Acceleration, Rapids Accelerator For Spark, Gpu-Enabled Spark Operations, Cost Savings With Gpus]
导读
使用GPU加速批处理ETL工作负载可以带来显著的成本节省、性能提升和能耗降低。在这个简短演讲中,我们将探讨如何使用Amazon EC2 G6 GPU实例来增强Apache Spark的性能,展示Spark操作可以实现高达5倍的速度提升和80%的成本降低。您将学习在Amazon EMR上利用GPU进行Spark批处理ETL工作负载的策略,并了解一个专门用于识别最适合GPU加速的工作负载的工具。我们还将分享RAPIDS Accelerator for Apache Spark用户的成功案例。此外,您还将了解客户的采用历程、生产部署情况,以及用户体验到的显著成本和性能优势。本演讲由亚马逊云科技合作伙伴NVIDIA为您带来。
演讲精华
以下是小编为您整理的本次演讲的精华。
在不懈追求利用数据指数级增长的过程中,RAPIDS Accelerator for Apache Spark应运而生,成为创新的灯塔,有望重新定义大规模数据处理的边界。Samira Raja在亚马逊云科技 re:Invent 2024上精彩的演讲揭示了一种变革性解决方案,该解决方案有望通过GPU加速的力量,将Spark工作负载加速5倍或更多,同时实现显著的成本节约。
推动这一突破性努力的动力是数据生成设备的激增。随着全球22亿活跃的Apple设备和30亿活跃的Android设备,正在产生前所未有的数据洪流。企业正在努力处理PB级数据,这是一项需要超越传统方法的创新解决方案的艰巨任务。
传统上,组织采用水平扩展,向集群中添加更多CPU来容纳不断增加的数据负载。然而,这种方法存在局限性,可能会导致数据下采样,从而影响报告和模型的准确性。或者,组织可以选择延长处理时间,但这种解决方案通常与严格的服务级别协议(SLA)和时间约束相冲突,阻碍了他们及时提供洞见的能力。
认识到摩尔定律放缓,Samira Raja提出了一种范式转变——利用加速器和NVIDIA GPU的力量来应对大规模计算挑战。这种方法与Apache Spark 3的进步保持一致,Apache Spark 3引入了资源感知调度,使任务能够调度到CPU或GPU等加速器上。此外,Apache Spark 3支持列式数据处理,允许在GPU上进行高效的并行处理,并能够集成插件,如RAPIDS Accelerator for Apache Spark。
RAPIDS Accelerator for Apache Spark可与各种Apache Spark发行版无缝集成,包括Amazon EMR、Databricks等。从用户角度来看,只要使用PySpark、Java、Scala或R进行SQL或DataFrame操作,就不需要进行任何代码更改。加速器会透明地将CPU操作符替换为GPU操作符,用于支持GPU的操作,同时对于不支持加速的操作,会无缝回退到CPU。
使用来自行业标准TPC-DS基准的NVIDIA决策支持(NDS)基准进行基准测试,展示了RAPIDS Accelerator所带来的卓越性能和成本节约。在Amazon EC2上,使用8个g6.8xlarge GPU实例与8个m7g.8xlarge Graviton CPU实例相比,平均加速比为4.8倍,成本节约高达72%。令人惊叹的是,有些查询的性能提升高达9倍。
在Amazon EMR 7.3上,平均加速比为1.3倍,最快的查询加速3.5倍,同时节省了14%的成本。然而,团队承认,由于未识别的EMR优化,某些查询的速度较慢,这是他们正在努力解决的挑战,他们正在将插件与EMR更紧密地集成,以充分发挥EMR Spark加速和RAPIDS Accelerator加速的潜力。
亚马逊云科技金融服务团队提供了一个引人入胜的真实案例,他们通过对数百亿笔年度信用卡交易进行时间序列分析来解决持续的交易欺诈检测问题。通过利用12节点r6g.4xlarge GPU集群与g6.4xlarge CPU集群进行比较,他们实现了14倍的加速和87%的成本节约。GPU集群仅用45分钟就完成了120GB数据集的处理,而CPU集群则需要10.5个小时,这充分展示了RAPIDS Accelerator的变革力量。值得注意的是,CPU集群的处理时间如此之长,以至于进一步扩大数据集规模将是成本禁止的。
为了进一步帮助用户识别适合GPU加速的作业,NVIDIA开发了一款开源工具“spark-rapids-user-tools”。这款创新工具分析现有的Spark事件日志,并推荐在GPU集群上运行的顶级候选作业,提供有关集群配置和作业调优机会的宝贵见解。
RAPIDS Accelerator的无缝集成不仅限于亚马逊云科技,它还可以与Databricks等其他Spark发行版一起使用,为加速各种平台上的Spark工作负载提供了一种多功能的解决方案。
总之,在亚马逊云科技上的RAPIDS Accelerator for Apache Spark代表了大规模数据处理的范式转变,使企业能够将其Spark工作负载加速5倍或更多,同时通过GPU加速的力量实现显著的成本节约。这一突破性解决方案解决了指数级数据增长带来的挑战,使组织能够在期望的时间约束内高效处理大量数据集,开启数据驱动决策和创新的新前景。
下面是一些演讲现场的精彩瞬间:
随着人工智能、机器学习和物联网设备推动数据呈指数级增长,企业正在努力以高质量和低延迟处理PB级数据。
探索处理数据激增的策略,包括水平可扩展系统如Apache Spark、下采样数据以及在预算约束下调整处理时间。
Apache Spark 3带来了资源感知调度、列式数据处理和插件功能,支持在CPU和GPU等加速器上进行高效并行处理。
演讲者展示了在EMR集群上使用GPU加速的性能和成本优势,平均加速1.3倍,节省14%成本,同时讨论了进一步优化与EMR集成的持续努力。
亚马逊云科技推出了一款开源工具,帮助识别和优化Spark作业,以在Amazon EMR上实现GPU加速,提供集群配置和作业调优建议。
亚马逊云科技在EMR和EC2实例上提供GPU加速的Spark集群,在处理大规模数据增长的同时,实现成本节约和更快的数据处理。
总结
利用GPU的强大性能,RAPIDS Accelerator for Apache Spark提供了一种突破性的解决方案,以应对现代时代数据呈指数级增长的挑战。这种创新方法使组织能够在亚马逊云科技、EMR和Amazon EC2实例上加速其Spark工作负载,带来显著的性能提升和成本节约。
通过利用RAPIDS Accelerator,组织可以以前所未有的速度和效率处理海量数据集。基准测试表明,与传统的CPU处理相比,该技术可实现高达9倍的加速,在EC2实例上平均加速4.8倍,在EMR集群上加速1.3倍,从而节省高达87%的成本。
RAPIDS Accelerator与现有的Spark工作流程无缝集成,用户无需更改任何代码。它智能地在GPU集群上调度任务,利用RAPIDS cuDF库和CUDA调用,发挥GPU并行处理的强大能力。对于尚未加速到GPU的操作,它会自动回退到CPU处理,确保平稳过渡。
为进一步赋能组织,NVIDIA开发了一款开源工具,可分析Spark事件日志,并识别最适合GPU加速的作业。该工具提供了集群配置和优化建议,使组织能够最大限度地受益于RAPIDS Accelerator。
在数据增长不见放缓的时代,RAPIDS Accelerator for Apache Spark提供了一种变革性的解决方案,使组织能够以高保真度处理数据,满足严格的SLA,并实现显著的成本节约,同时在亚马逊云科技上利用GPU加速的强大能力。
亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者。提供200多类广泛而深入的云服务,服务全球245个国家和地区的数百万客户。做为全球生成式AI前行者,亚马逊云科技正在携手广泛的客户和合作伙伴,缔造可见的商业价值 – 汇集全球40余款大模型,亚马逊云科技为10万家全球企业提供AI及机器学习服务,守护3/4中国企业出海。