综合介绍
3FS(Fire-Flyer File System)是由DeepSeek团队开发的一款开源并行文件系统,专为现代SSD和RDMA网络设计,旨在大幅提升数据访问效率。它在180节点集群中实现了6.6 TiB/s的聚合读取吞吐量和3.66 TiB/min的写入速度,展现了惊艳的高性能表现。作为DeepSeek开源周的成果之一,3FS不仅是技术革新的产物,还体现了团队对社区共享的承诺。它颠覆了传统面向磁盘的分布式文件系统设计,针对现代硬件特性优化,适用于需要高效数据处理的大规模计算场景,比如AI训练和大数据分析。无论是开发者还是企业用户,都可以通过GitHub获取源代码,自由部署和定制。
功能列表
- 高吞吐量数据访问:支持6.6 TiB/s读取和3.66 TiB/min写入,充分利用SSD和RDMA网络带宽。
- 并行处理能力:允许多节点协同工作,提升大规模集群的数据处理效率。
- 现代硬件优化:针对SSD和RDMA网络进行深度适配,突破传统文件系统的性能瓶颈。
- 开源可定制:提供完整源代码,用户可根据需求修改和扩展功能。
- 生产环境开箱即用:经过DeepSeek团队生产验证,可直接部署到实际业务场景。
使用帮助
获取与安装流程
3FS作为一个开源项目,部署需要一定的技术背景。以下是详细的安装与使用指南,帮助用户快速上手。
1. 获取源代码
- 打开浏览器,访问https://github.com/deepseek-ai/3FS。
- 点击页面右上角的“Code”按钮,选择“Download ZIP”下载压缩包,或者使用Git命令克隆仓库:
git clone https://github.com/deepseek-ai/3FS.git
- 下载完成后,解压文件到本地目录,例如
/home/user/3FS
。
2. 环境准备
3FS依赖现代硬件(SSD和RDMA网络)和Linux环境运行。确保你的系统满足以下条件:
- 操作系统:推荐Ubuntu 20.04或更高版本的Linux发行版。
- 硬件要求:支持NVMe SSD和RDMA网络(如InfiniBand或RoCE)的服务器集群。
- 依赖软件:需要安装Git、GCC、Make等基本编译工具。可以运行以下命令安装:
sudo apt update sudo apt install git gcc make
3. 编译与安装
- 进入3FS目录:
cd /home/user/3FS
- 检查是否有额外的依赖说明(通常在
README.md
中),若有,按照文档安装。 - 编译源代码:
make
- 编译成功后,安装到系统:
sudo make install
安装完成后,3FS的可执行文件和配置文件会被部署到系统默认路径(通常是
/usr/local/bin
)。
4. 配置集群
- 编辑配置文件(默认位于
config
目录下,例如3fs.conf
),设置集群节点信息:- 指定节点IP地址,例如
node1=192.168.1.10
。 - 配置SSD存储路径,例如
storage_path=/dev/nvme0n1
。 - 设置RDMA网络参数,确保节点间通信正常。
- 指定节点IP地址,例如
- 保存配置后,在每个节点上启动服务:
3fs --config /path/to/3fs.conf
5. 验证安装
- 检查服务状态:
3fs --status
- 如果返回类似“3FS running on 180 nodes”的信息,说明部署成功。
主要功能操作流程
高吞吐量数据访问
- 挂载文件系统:在客户端运行以下命令,将3FS挂载到本地目录:
mount -t 3fs /path/to/storage /mnt/3fs
- 读取数据:直接使用
cat
或cp
命令读取文件,例如:cat /mnt/3fs/large_file.txt
系统会自动并行从多个节点提取数据,速度可达6.6 TiB/s。
- 写入数据:复制文件到挂载目录:
cp large_file.txt /mnt/3fs/
写入速度可达3.66 TiB/min。
并行处理
- 在多节点环境下,3FS自动分配数据任务。用户无需手动干预,只需确保应用程序支持并行I/O(如Hadoop或MPI程序)。
- 测试并行性能示例:
dd if=/dev/zero of=/mnt/3fs/testfile bs=1G count=10
观察吞吐量是否接近预期值。
定制开发
- 修改源代码:进入
src
目录,编辑C/C++文件。例如,调整缓冲区大小以优化特定工作负载。 - 重新编译:
make clean && make
- 部署修改后的版本:
sudo make install
注意事项
- 硬件兼容性:确保所有节点支持RDMA和NVMe,否则性能可能下降。
- 网络配置:防火墙需开放RDMA相关端口(默认如4791),避免通信中断。
- 文档参考:安装过程中遇到问题,可查看GitHub页面上的
README.md
或提交Issue求助。
通过以上步骤,用户可以快速搭建并使用3FS,体验其高效的数据访问能力。无论是AI训练还是大数据处理,3FS都能提供强劲支持。
回顾本周发布,DeepSeek已经构建了一个完整的大模型技术栈:
-
• Day 1 - FlashMLA:高效的MLA解码内核,优化了变长序列处理 -
• Day 2 - DeepEP:首个开源专家并行通信库,支持MoE模型训练和推理 -
• Day 3 - DeepGEMM:支持密集和MoE计算的FP8 GEMM库 -
• Day 4 - 并行计算策略:包括DualPipe双向流水线并行算法和EPLB专家并行负载均衡器 -
• Day 5 - 3FS与Smallpond:高性能数据存储和处理基础设施