Zero-Change Object Transmission for Distributed Big Data Analytics——论文泛读

ATC 2022 Paper

问题

分布式大数据分析在很大程度上依赖于Java和Scala等高级语言的可靠性和多功能性。然而,这些高级语言也为数据传输制造了障碍。要在Java虚拟机(JVM)之间传输数据,发送方应将对象转换为字节数组(序列化),接收方应将其转换回对象(反序列化),对象序列化和反序列化(OSD)阶段引入了相当大的性能开销。

现有方法局限性

先前的工作主要集中在优化OSD中的某些阶段,因此对象转换仍然是不可避免的。其中许多方法都需要额外的编程工作来注释序列化点,或更改原始的JVM间通信模。而且他们将传输的数据视为单片字节数组,而不是单个对象,这使得识别重复传输变得困难,并错过了优化机会。

本文方法

本文提出了零变化对象传输(ZCOT),使对象在JVM之间直接复制,而不需要任何转换。ZCOT可以在现有应用程序中使用,只需少量修改,其基于对象的传输可以用于重复数据消除。

  • 引入了名为交换空间的全局共享抽象,它是Java堆空间的一部分,可供分布式环境中的多个JVM访问。进一步采用了分布式类数据共享(DCDS)机制,该机制提供了统一的对象格式,使交换空间中的对象对所有JVM都是可解释的。为了与传统的基于操作系统的应用程序保持兼容,提出了两级传输机制,以弥合基于对象的复制和传统的基于字节的传输之间的差距。

  • 引入元数据服务器,可以存储对象的位置,并在JVM之间建立数据传输通道。支持基于组的对象管理,它将对象分组,大大减少元数据服务器和JVM之间的流量。还与单个JVM中触发的垃圾回收(GC)集成,并减少了GC暂停时间。

  • 提出了重复数据消除机制,以进一步优化数据传输。去重模块利用交换空间抽象来存储哪些对象已经被发送,并避免了将来不必要的对象传输。然而,重复数据消除可能会在不同的数据集之间引入引用(或依赖关系)。为此,扩展了分布式内存管理模块,以考虑组间依赖关系。

本工作在OpenJDK的长期支持版本OpenJDK 11的HotSpot JVM中实现了ZCOT。ZCOT与OpenJDK中的现有功能(如APPCDS30)集成良好,对Java开发人员保持友好。

测试的结果表明,ZCOT优于其他OSD库,与最先进的OSD优化Naos39相比,速度提高了4.35倍。ZCOT在Spark和Flink中都优于默认OSD库,因此应用时间分别提高了23.6%和22.2%。

实验

实验环境:具有四个节点的集群,这些节点由100 Gbit/s的Mellanox ConnectX-5 NIC连,每个节点包含双Xeon E5-2650 CPU和128GB DRAM。

数据集:微基准测试、Spark、Flink(TPC-H)

实验对比:执行时间

实验参数:堆大小、块大小、数据集

总结

针对JVM虚拟机间数据传输的对象序列化和反序列化(OSD)开销。本文提出零变化对象传输(ZCOT),包括三个创新点:(1)引入名为交换空间的全局共享抽象。采用了分布式类数据共享(DCDS)机制,使交换空间中的对象对所有JVM都是可解释的。(2)引入元数据服务器,用于存储对象的位置,并在JVM之间建立数据传输通道。支持基于组的对象管理,减少元数据服务器和JVM之间的流量。与单个JVM中触发的垃圾回收(GC)集成,并减少了GC暂停时间。(3)提出了重复数据消除机制,利用交换空间抽象来存储已发送对象,并避免不必要的对象传输。扩展了分布式内存管理模块,以考虑组间依赖关系,避免重复数据消除在不同的数据集之间引入依赖关系。

相关推荐
feasibility.4 小时前
LeCun团队世界模型JEPA首登无人机:9K参数模型,零样本Sim-to-Real飞入100Hz闭环
论文阅读·嵌入式·无人机·具身智能·世界模型·杨立昆·jpea
XLYcmy8 小时前
ASR识别任务两篇论文阅读分析与系统方案技术报告 上
论文阅读·ai·gpu·asr·论文分享·speechbrain·wespeaker
Zucker n1 天前
文献发现、课题组织与证据可追溯的论文阅读。
论文阅读·windows·ubuntu
西柚小萌新1 天前
【论文阅读】--可信LLM智能体的威胁与对策 综述
论文阅读
Rocky Ding*1 天前
【三年面试五年模拟】2026-11-05_月之暗面大模型算法岗一面、二面面经全解析
论文阅读·人工智能·深度学习·机器学习·aigc·强化学习·ai-native
Rocky Ding*3 天前
REPA-E技术深度解析:解冻 VAE 之后,扩散模型为什么需要选择梯度
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·repa-e
Rocky Ding*4 天前
【三年面试五年模拟】2026-11-01_字节跳动AI Agent全栈研发一面面经全解析
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·ai agent
五网5 天前
软件测试用例模板怎么写:从用例设计到执行记录的全套指南
软件测试·论文阅读·全文检索·测试用例·论文笔记·用例设计·用例模板
Rocky Ding*5 天前
深入浅出IDM-VTON论文精读:虚拟试衣怎样同时保住服装语义与局部细节
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·idm-vton
天树星智源5 天前
机器人 VLA 一个模型同时动手和动脑:动作参数只占 0.21%,万级扰动任务 85.9%
论文阅读·机器人·vla·全身控制