Anyscale用Joins和Hash-Shuffle增强了射线数据,以提高性能
Anyscale Enhances Ray Data with Joins and Hash-Shuffle for Improved Performance
Timothy Morano May 20, 2025 04:25
Anyscale introduces a hash-based shuffle backend in Ray Data, enhancing joins and performance for repartitioning and aggregations.根据Enyscale的说法,发现Ray 2.46版本中的进步。
Anyscale揭开了对射线数据的重大改进,这是通过引入基于哈希的洗牌后端的重点。这项新功能是Ray 2.46版本的一部分,旨在提高连接并提高数据重新分配和聚集的性能,同时还减轻了内存压力。
射线数据中的增强功能
最新版本具有几个新功能,包括通过ds.join()API,基于密钥的重新分配的本机加入支持,以及名为gentregateFNV2的简化自定义聚合API。此外,大规模排序的性能得到了改善,从而增强了范围分区的划分。
新引入的基于哈希的混乱后端解决了基于范围的散装方法的先前限制。在先前的版本中,改组依赖于范围分区,这是资源密集型的,容易发生瓶颈。新方法分区基于键值分组传入的数据块,将其引导到相应的聚合器参与者进行有效处理。
实施与Hash Shuffle shuffle
ray 2.46一起实施加入,引入了各种联接类型的支持,包括内部,左/左/左/外部外部和联合。 Hash-Shuffle后端带有相同键的共同结合记录,从而优化了性能。这种方法利用Apache ARROW的Acero引擎通过Pyarrow的本机表。Join操作,尽管它可以是内存密集的。
基准测试性能
性能基准测试表现出多个工作负载的实质性改进。与以前的版本相比,使用M7i.4xlarge和M7i.16Xlarge实例在群集上进行的测试揭示了性能增长范围从3.3倍到5.6倍。值得注意的是,以前难以管理的TPCH-Q1-SF1000工作负载现在是可行的。
其他测试表明,分区分配的混乱也有所改善,运行时增强功能在1.6倍和4.3倍之间。重要的是,Hash Shuffle后端大大降低了峰值存储器的使用情况,最高3.9倍。
未来的发展
展望未来,任何规模的计划扩展了对不同联接类型的支持并实施逻辑计划的优化,以重新订购加入。还可以预期对数据预处理器的进一步增强。
射线数据中的这些进步设置为授权开发人员具有更有效的数据处理功能。有关更多见解,请访问官方的AnyScale Blog。
图像来源:Shutterstock