块存储、文件存储、对象存储分别对应裸设备直写、目录共享访问、HTTP键值存取三种数据访问方式;块适用于数据库/虚拟机等低延迟独占场景,文件适用于多用户协作共享,对象适用于海量非结构化数据的弹性归档与API直连。

选存储介质,关键不是看参数多高,而是看业务怎么读写数据、谁在用、要不要共享、后续怎么管。块、文件、对象三类不是互斥的替代关系,而是对应三种不同的访问方式——就像你不会用螺丝刀去拧开罐头,也不会拿开瓶器去拧螺丝。
块存储:适合需要“当本地硬盘用”的场景
它提供的是裸设备(比如 /dev/sdb),操作系统得自己建文件系统(如 ext4)、自己管理目录和权限。数据库、虚拟机磁盘、HPC计算节点的临时盘,都属于这一类。
- 挂载方式:通过 iSCSI、FC 或 NVMe-oF 协议连接,Linux 下表现为 /dev/sdX 设备,需 mkfs + mount 才能使用
- 典型业务:MySQL/Oracle 数据库数据盘、VMware/KVM 虚拟机系统盘、AI 训练中 GPU 直接读取的 checkpoint 镜像卷
- 注意点:单主机独占访问为主;跨主机共享需额外部署集群文件系统(如 GPFS、Lustre),否则容易冲突
文件存储:适合“多人共用一个文件夹”的协作型业务
它对外暴露的是完整目录结构,用户直接看到 /project/code/ 这样的路径,权限、版本、锁机制都由服务端内置处理。
- 挂载方式:Linux 常用 mount -t nfs 或 cifs-utils;Windows 直接映射网络驱动器(\nas-ipshare)
- 典型业务:EDA 工程共享库、研发代码仓库(GitLab/NFS 后端)、设计素材集中管理、办公文档协同平台(如 Confluence 文件附件存储)
- 注意点:高并发小文件场景下,元数据操作(如 ls、open)易成瓶颈;目录层级过深或文件数过多会影响响应
对象存储:适合“扔进去就不管,但要随时能找出来”的海量非结构化数据
它没有目录树,只有扁平的 Bucket + Key,靠 HTTP API(如 S3)上传下载,所有操作都是无状态的 REST 请求。
- 挂载方式:一般不直接挂载为本地盘;可通过 s3fs、rclone 或厂商提供的 FUSE 工具模拟成文件系统(性能有折损);更多是应用直连 SDK/API
- 典型业务:监控视频归档、AI 训练原始数据集(图片/日志)、网站静态资源(CSS/JS/图片)、备份镜像上传(Veeam、Commvault 直接对接 S3 兼容接口)
- 注意点:不支持随机写、不支持文件锁、延迟较高(百毫秒级);适合一次写入、多次读取,不适合数据库或实时日志追加
实际选型时,别只盯着“快不快”,先问清楚:这个业务是单机独占还是多人共享?数据是结构化记录、工程文件,还是照片视频日志?后续会不会要跟 AI、备份、归档系统联动?答案清楚了,挂载方式和协议自然就浮现出来。

















