什么是块存储、文件存储、对象存储?

我们都知道,存储设备就是为数据提供空间。

U盘、硬盘和固态硬盘都是存储最终的存储设备。而块存储、文件存储和对象存储也可以简单地理解是不同类型的存储设备,它们是根据使用介质存储数据的手段或方法不同来划分的。

首先我们来看下块存储:

块存储提供的是不带文件系统裸磁盘,使用之前需先进行初始化。

我们比较常见的块存储形式是我们的Windows硬盘或手机存储空间,数据是按字节块来存储和访问的。

块存储使用时,文件系统在客户端,例如Windows系统,我们可以在Windows桌面查看我们存储的内容,但是对于硬盘里的内容和格式,我们是一无所知的,只有借助客户端的文件系统才能查看。

通俗的来说,**在块存储中,数据就像每个瓜子一样,堆放在存储仓里。瓜子就是每个数据块,这个存储舱就是磁盘。**块存储只关心瓜子的进来和出去,不关心瓜子粒之间的关系和用途。

下面我们来看下什么是文件存储:

**文件存储的存储端带有文件系统,**我们常见的NAS存储都是文件存储设备。

这些文件存储设备除了磁盘外还带有文件系统,用户直接通过存储端的文件系统就能调用存储资源。

文件存储一般体现形式是目录和文件(比如C:\User\ProgramFiles\CommonFiles),数据以文件的方式存储和访问,按照目录结构进行组织。文件存储有自己的文件系统,对于每个客户端而言是一个统一的文件系统,可以同时供多个客户端使用,易于共享。

好比上面图中,数据像瓜子一样在一起组成了向日葵,再对应到不同的向日葵杆,要找到某个向日葵籽,先找到这个对应的向日葵杆,再找到这个向日葵,然后根据在这个向日葵上对应的位置找到这个瓜子。

相比于块存储,文件存储由于有自己的文件系统,**可以实现更高级的管理,可以很方便的共享,因此用途非常广泛。**比如常用的NFS、CIFS、ftp等都是基于文件存储的。但相比于块存储,文件存储读写速度相对于块存储要慢一点。

最后我们来看下对象存储:

块存储性能出色但是不能共享,文件存储可以共享但是速度又总是不让人满意。

作为不会做选择题的成年人,既想性能,还要实现共享,同时还要满足大规模扩展需求,所有后来就出现了对象存储。

对象存储一般体现形式是一个UUID(比如我们常见的网址https://new.qq.com/omn/20201119/20201119A0CEI01210.html),这个UUID是唯一性的,即使在全球也只有通过这一个UUID。

数据和元数据打包在一起作为一个整体对象存在一个超大池子里。用户想访问,只需能通过它的UUID,才能找到它。

好比上面图中,数据的葵花籽被做成了包装袋,每个包装袋都有一个唯一出厂条形码,但是找对应的对应的瓜子袋,只能通过唯一条形码找到对应的瓜子袋,但每一次都只能是一袋为单位。

对象存储端的文件系统就是采用这种哈希表-键值(可以理解为查字典,最多两层目录)这种方式来提高读写速度的。

对象存储就可以非常简单的扩展到超大规模,因此非常适合数据量大、增速又很快的视频、图像等,例如百度网盘、大数据存储;

相关推荐
运维小文7 天前
ceph的集群管理
ceph·对象存储·存储·ceph集群管理·ceph节点管理
雪碧聊技术11 天前
JavaWeb:文件上传1
uuid·本地存储·multipartfile·文件存储·单个文件上传大小限制
Ciderw14 天前
块存储、文件存储和对象存储详细介绍
网络·数据库·nvme·对象存储·存储·块存储·文件存储
百度智能云技术站1 个月前
计算不停歇,百度沧海数据湖存储加速方案 2.0 设计和实践
hdfs·数据湖·对象存储·并行文件存储
Crazy Struggle3 个月前
.NET 8.0 文档管理系统网盘功能的实现
文件存储·.net 8.0·文档管理系统
wusong9994 个月前
minio笔记之windows下安装使用
笔记·对象存储·minio
戴国进4 个月前
分布式对象存储minio
对象存储·oss
thanks4 个月前
Bond——大数据时代的数据交换和存储格式
大数据·对象存储
大小胖虎5 个月前
专业课笔记——(第十二章:文件的读写)
c语言·笔记·字符串·文件·文件存储·文件的读写
MinIO官方账号5 个月前
MinIO 网络与覆盖网络
linux·服务器·网络·安全·kubernetes·对象存储