JuiceFS 企业版 5.2:迈入千亿文件时代,稳定性与性能再升级,首次支持 Windows 客户端

2025-05-28
Juicedata Team

JuiceFS 企业版 5.2 版本近日发布,文件管理规模迈入千亿级。此次升级重点提升了超大规模集群的稳定性,优化了分布式缓存的网络性能,并增强了系统的易用性与安全性,旨在支持高并发访问等复杂的高性能应用场景。

JuiceFS 企业版专为高性能场景设计,自 2019 年起开始应用于机器学习领域,现已成为 AI 行业核心基础设施之一。我们的商业客户涵盖大模型公司,如 MiniMax、智谱 AI、阶跃星辰;GenAI 服务与应用提供商如 Lepton AI、Fal.ai、LiblibAI 等;自动驾驶领域的 Momenta、地平线等,以及众多应用 AI 技术的各行业领先科技企业。

01 超大规模稳定性提升:支持千亿文件规模

AI 场景,尤其是在自动驾驶等领域,数据量增长迅猛。例如,单辆自动驾驶汽车每天可产生高达 20TB 的数据,随着自动驾驶技术的普及,这一数据量将以指数级增长。分布式文件系统不仅要满足现有业务的容量需求,更要具备支撑未来持续扩展的能力。

然而,实现从百亿到千亿规模的突破,对分布式文件系统提出了诸多严峻挑战,包括如何管理复杂度大幅提升的元数据,如何在高并发环境下扩展性能的同时依然保持强一致性,如何平滑扩展规模的同时又能保持系统稳定。

多分区机制通过元数据分区和并行处理,是 JuiceFS 应对大规模集群的核心策略。5.2 版本通过优化多分区机制的稳定性和内存压缩策略,实现了文件规模的再次突破。5.2 版本还针对多分区机制在各种极端场景下的问题进行了修复,进一步增强了系统的可靠性。

该优化方案已在多个企业的生产环境中得到充分验证,单个集群管理文件数量超过 500 亿,元数据请求的平均延迟稳定在 1ms 左右。同时,日常读写带宽分别达到 50 GiB/s 和 30 GiB/s,峰值读速超过 200 GiB/s。

为进一步验证新版本在高并发元数据处理和系统稳定性方面的表现,我们在内部部署了一个更大规模的测试集群,使用 mdtest 工具在 12 小时内写入了 1300 亿文件,并在此规模下维持了 24 小时的混合负载。

硬件配置:

  • 36 台 GCP c3-standard-176 服务器
  • 每台配备 176 个 vCPU、704GB 内存和 100Gbps 网络接口

性能表现:

  • 累计写入超过 1300 亿个文件
  • 元数据集群稳定地维持了平均每秒 800 万 IOPS

02 分布式缓存网络优化,实现 TiB 级聚合带宽

随着数据量与模型规模的爆炸性增长,多个客户端频繁访问相同数据的场景愈加普遍。分布式缓存通过聚合多个节点的本地缓存形成大容量缓存池,提升缓存命中率,增强读带宽和 IOPS,降低读延迟,满足高性能需求。

然而,节点间的数据交换极度依赖网络性能。带宽不足会限制传输速度,增加延迟;网络延迟过高会影响缓存响应,降低系统效率;同时,网络数据处理消耗的 CPU 资源也可能成为瓶颈,限制整体性能。

在 5.2 版本中,我们针对分布式缓存节点间的网络传输进行了多项优化,具体优化包括:

  • 采用零拷贝,减少系统调用和数据拷贝;
  • 采用多路复用,小包合并和设置 socket 参数 SO_RCVLOWAT(接收低水位线)解决网络碎片化导致的 CPU 利用率下降问题;
  • 优化了 CRC 校验流程,降低 CPU 开销。这些优化显著提升了分布式缓存性能,降低系统延迟,满足高并发和大规模访问需求。

企业版 5.2 的关键性能提升可以参考以下图表:

CPU 带宽
CPU 带宽

从图表中可以看出,经过一系列优化后,5.2 版本显著降低了 CPU 的开销:客户端的 CPU 开销降低了一半以上,缓存节点的 CPU 开销也得益于零拷贝技术,降低到优化前的 1/3。

分布式缓存集群带宽
分布式缓存集群带宽

JuiceFS 5.2 版本相比 5.1, 对网络带宽的利用率更高,15 台 GCP 200Gbps 节点的规模下聚合带宽提高了约 20%;此外,我们还搭建了由 100 台 GCP 100Gbps 节点组成的分布式缓存集群,使用 fio 工具进行连续读取测试时,聚合读带宽达到了 1.2 TB/s,接近跑满 TCP/IP 的网络带宽,表明系统具有更强的水平扩展能力,在大规模环境下也能充分发挥硬件性能,支撑高并发、大数据量的访问需求。

03 首次发布 Windows 客户端(Beta)

在 Windows 系统中,许多用户一直希望能够使用 JuiceFS 实现文件共享。由于早期版本的 Windows 客户端存在不少稳定性和兼容性问题,因此一直处于内部测试阶段。在新版本中,我们首次正式发布了 Windows 客户端(Beta)。在这个版本中,我们全面提升了其整体可用性和稳定性,使它能够满足大多数日常使用场景的需求。主要包括以下优化:

  • 修复了 Windows 客户端在 API 调用和用户身份管理等方面存在的多个兼容性问题;
  • 完善了工具支持,目前 debug、stat、info 等子命令已可在 Windows 平台下正常使用;
  • 新增了对后台运行参数的支持,使 JuiceFS 可以直接作为系统服务进行挂载,无需再借助第三方工具。

欢迎有需求的用户下载体验,并反馈您在使用过程中遇到的任何问题。我们将积极配合进行修复优化,为 Windows 用户提供更优质的使用体验。

04 其他重要功能优化

功能改进

  • 提高 Python SDK 的兼容性,进一步改善性能。
  • 优化共享块设备特性:JuiceFS 允许客户端使用块设备来加速数据读写。此前版本中需要将块设备挂载到每一个需要加速的客户端节点,因此要求块设备本身支持多机挂载。新版本中去掉了此约束条件,允许仅挑选一个客户端将块设备挂载到本地,其它客户端通过网络来共享访问此块设备。
  • 按需导入对象存储文件:JuiceFS 支持将对象存储中的已有对象导入到文件系统中,从而提供跨协议访问和数据缓存的能力。但当需要导入的对象数很多时,一次性完整导入会给元数据服务带来较大的压力,而且耗时也比较久。新版本中提供了按需导入的功能,用户仅需配置好文件系统跟存储桶的关联即可,对象不会被立即导入,而是在首次访问时触发导入。
  • 支持不同大小的缓存盘:数据缓存是 JuiceFS 提供的核心能力之一。此前版本要求所有本地缓存盘必须大小一致。新版本中放宽了此限制,允许客户端通过权重机制同时使用不同大小的缓存盘,提高缓存灵活性和资源利用率。

稳定性

  • 改善读放大问题:JuiceFS 设计了一系列预读和预取的策略来提升读取文件的性能。然而在某些特定场景中,这些策略反而会带来不可忽略的读放大问题,浪费了对象存储带宽。新版本中我们重新评估并调整了这些策略,大幅减小了在读取特定规模文件,以及进行 4 MiB 随机读等场景下的读放大现象。
  • 更强的全局 QoS 能力:文件系统全局的 QoS 需要元数据服务主控。当客户端数量增加时,维护 QoS 而产生的额外消息也成倍增多,甚至影响到正常的业务请求。新版本中对 QoS 相关的请求做了合并,大大减小了其对元数据服务的压力。

易用性

  • 控制台一键升级客户端:版本升级是软件维护的必然需求。之前版本中,JuiceFS 客户端的升级需要用户运维人员登陆到每一个客户端节点,执行对应的升级命令。在新版本中,控制台上直接提供了一键升级的按钮,方便运维人员快速完成升级。
  • 一键获取客户端 debug 信息:与上一个升级功能类似,新版本中当我们需要收集某一个客户端的 debug 信息时,不再需要登陆到对应节点执行 debug 命令,而是可以在控制台上直接执行并下载结果文件。
  • 支持通过 restore 命令来辅助回收站文件恢复:当用户需要恢复的文件需要进行多个关键字过滤,或者有一个完整的文件列表时,新版本的 restore 命令不仅更方便使用,还提供了更优的性能。

安全性

  • 对象存储访问凭证加密:客户端本地的配置文件中记录了对象存储的 access key 和 secret key 等访问凭证,一旦泄漏可能对用户的数据产生毁灭性的影响。新版本中默认对这些访问凭证进行了 AES 加密,且禁止操作者显式解密。

05 小结

JuiceFS 企业版 5.2 实现了从百亿级到千亿级文件规模的突破,为 AI 场景数据的持续增长提供了坚实基础。新版本通过优化分布式缓存网络性能,大幅降低了 CPU 开销,网络性能提升至 TiB 级带宽。同时,首次发布了 Windows 客户端(Beta)版本,并对多个关键特性进行了优化,进一步增强了系统的性能、可用性和稳定性。

云服务用户现已可以直接在线体验 JuiceFS 企业版 5.2 版本。私有部署用户也可通过官方渠道获得升级支持。

5.2 版本的优化是基于客户的实际需求和行业发展趋势。我们将继续紧密关注 AI 领域的进展,专注于产品研发,助力企业以简洁灵活的架构应对持续变化的数据挑战。

相关博客

缓存管理自动化:JuiceFS 企业版 Cache Group Operator 新特性发布

2024-12-26
JuiceFS 企业版推出了 Cache Group Operator,用于自动化创建和管理缓存组集群。Operator 是一种简化 Kubernetes 应用管理的工具,它能够自动化应用程序的生命…

使用 JuiceFS 快照功能实现数据库发布与端到端测试

2024-11-15
JuiceFS 云服务用户 Jerry,他们通过使用 JuiceFS snapshot 功能,创新性地实现了数据的版本控制。Jerry,是一家位于北美的科技公司,利用人工智能和机器学习技术,简化用户…

详解 JuiceFS 在多云架构下的数据同步与一致性

2024-10-18
最新的 JuiceFS 企业版 5.1 中, 镜像文件系统除了支持读取,还新增了可直接写入的功能。本文将探讨镜像文件系统的读写实现原理。

全新 JuiceFS Python SDK 快速上手

2024-10-14
JuiceFS 5.1 商业版推出了全新的 Python SDK,适用于云服务和企业版。一方面可以让用户绕过 FUSE 模块直接以编程的方式读写 JuiceFS 文件系统,另一方面也方便用户集成 J…