Zeus- Uber的分布式Spark Shuffle Service

Zeus: Uber的分布式Spark Shuffle Service


特性

  • 垂直扩展

    • 独立节点运行;

    • 去中心化存储,节点无状态;

  • 解决网络延迟

    • 降低服务响应等待时间

    • 流数据

  • 性能优化


架构


优化点

横向扩展

  • shuffle 服务独立,可在不同应用间共享;

  • shuffle 节点无状态;

  • shuffle 节点可根据需求横向扩展;

分布式shuffle服务


磁盘文件直接读写

  • 直接写入文件,无应用层的缓存;

  • 零拷贝

  • 顺序读写,无随机磁盘IO;


实现方面优化

  • Netty:高性能异步服务框架

  • 2个线程组:

    • group1接收网络连接;

    • group2读取数据;

    • 彼此不阻塞;

  • 二进制网络协议

    • 编码和压缩更有效

客户端压缩

  • shuffle client
updatedupdated2024-05-052024-05-05