跳转至

文件存储块存储对象存储区别

1. 文件存储 (File Storage)

📂 典型场景:NAS(网络附加存储)、共享文件服务器、企业文件共享。

  • 组织方式:以目录(文件夹)+ 文件 的层级方式组织。

  • 访问方式:通过 文件路径 访问,比如 /home/user/a.txt

  • 协议:常见的有 NFS、SMB、CIFS。

  • 优点

    • 用户最熟悉的方式(文件夹结构)。

    • 方便共享、易于权限控制。

  • 缺点

    • 元数据管理复杂(目录层级多时性能下降)。

    • 扩展性有限,适合 TB 级别,而不是 PB 级别。


2. 块存储 (Block Storage)

💽 典型场景:虚拟机系统盘、数据库存储、SAN(存储区域网络)。

  • 组织方式:数据被切分成固定大小的“块”(比如 4KB、8KB),系统并不知道这些块存储的是什么。

  • 访问方式:通过 逻辑块地址(LBA) 访问,比如第 1000 个块。

  • 协议:iSCSI、FC(光纤通道)、本地磁盘接口(SATA、NVMe)。

  • 优点

    • 性能高,延迟低,适合高并发读写(数据库、事务型系统)。

    • 灵活,用户可以在块存储上自己建立文件系统(ext4、xfs、NTFS)。

  • 缺点

    • 不自带文件系统,需要用户格式化。

    • 跨主机共享困难(除非用集群文件系统)。


3. 对象存储 (Object Storage)

🗃 典型场景:云存储(如 Amazon S3、阿里云 OSS、MinIO)、大数据、备份、图片/视频存储。

  • 组织方式:数据以 对象(Object) 方式存储,每个对象包含:

    • 数据本身

    • 元数据(例如文件类型、权限、自定义标签)

    • 唯一 ID(通常是 Key 或 URL)

  • 访问方式:通过 HTTP/REST API 访问,比如 https://bucket.s3.amazonaws.com/photo.jpg

  • 协议:S3 API、Swift API。

  • 优点

    • 无限扩展性,可达 PB/EB 级。

    • 高可用,自动多副本,适合存冷数据、海量文件。

    • 直接通过 URL 调用,方便和 Web、App 对接。

  • 缺点

    • 延迟比块存储高,不适合数据库这类低延迟场景。

    • 不能直接作为操作系统文件系统挂载(需要特殊网关/FUSE 工具)。


📊 总结对比表

特性 文件存储 (File) 块存储 (Block) 对象存储 (Object)
组织方式 目录+文件 数据块 对象(数据+元数据+ID)
访问方式 路径 块地址 API(Key/URL)
协议 NFS、SMB iSCSI、FC、SATA S3 API、HTTP
扩展性 一般(TB 级) 一般(TB~PB) 超强(PB~EB)
典型场景 文件共享、办公 系统盘、数据库 云存储、备份、图片视频

👉 可以这么记:

  • 块存储 = 裸硬盘(你得自己装系统或建文件系统)

  • 文件存储 = 文件柜(目录+文件方式)

  • 对象存储 = 网盘/云存储(通过 URL/ID 访问,不管目录结构)