1、块存储
块存储可以看作为是裸盘,最明显的特征是不能被操作系统直接访问。可以通过划分逻辑卷、做RAID、LVM等方式将它格式化,可以格式化为你所指定的文件系统(Ext3,Ext4,NTFS,FAT32等),然后才可以被操作系统访问。常见的DAS、FC-SAN、IP-SAN都是块存储。它的优点是:读写速度快(带宽和IOPS);但是缺点也同样明显:太过于底层,不利于扩展,不能被共享;
块存储是我们最常用的一种存储模式。比如个人PC上的硬盘,服务器上的硬盘,外置设备通过SCSI或者FC接口直接连接到电脑上的。
这种存储方式有一种很大的缺陷,其存储性能瓶颈来自于自家PC电脑或者服务器的卡槽的多少。比如我们的笔记本一般只能装一个硬盘+SSD基本上已经没有位置再做扩展了。也就是DAS的性能瓶颈来自于主板的卡槽数量。很难做scale out扩展(即横向扩展)。
事实上,这种DAS存储模式,一般在中小型企业汇总应用十分广泛。它更依赖主机的操作系统来实现数据的IO读写、数据管理、数据备份等工作。
但是这种存储模式也存在一定的缺点。比如可管理性差、弹性扩展能力弱,难以跟上IT发展趋势等问题。举例来讲,一台服务器/电脑只会配备固定容量的DAS存储,那么如果容量不够用,存储空间太小,就很难从内部着手实现弹性扩展(外部扩展容量也存在弊端),如果存储空间太大还会导致资源浪费,这一点在服务器领域尤为明显。
2、文件存储
文件集存储,典型代表–NAS。对于用户来说,NAS好比是一个共享文件夹,文件系统已经存在,用户可以直接将自己的数据存放在NAS上。NAS以文件为传输协议,开销很大,不利于在高性能集群中使用。
常见的文件存储有:阿里云文件存储(点击进入产品页面) 和 腾讯云文件存储(点击进入产品页面)了解和购买!
NAS是一种通过网络达成存储目的的设备,NAS传输数据依靠的是TCP/IP网络协议栈,这是NAS存储于上文的DAS和SAN存储最大的不同之处。
NAS是标准的文件级存储方法,采用网络技术(TCP/IP、ATM、FDDI),通过网络交换机连接存储系统和服务器主机来建立存储私网。其主要特征是把存储设备、网络接口和以太网技术集成在一起,直接通过以太网网络存取数据。能够快速实现部门级存储容量需求与文件传输需求。
文件存储可以分为本地文件存储和网络文件存储。文件存储最明显的特征是支持POSIX的文件访问接口:open、read、write、seek、close等;优点是:便于扩展&共享;缺点是:读写速度慢;
3、对象存储
对象存储,相对来说是比较新的一种存储。有一种说法是对象存储一定是分布式存储,因为分布式文件存储可能是分布式存储,而未必是对象存储。常见的对象存储的开源实现有Ceph的RADOS、Openstack的swift、AWS s3等;常见分布式文件系统有lustre、glusterfs、HDFS等;
对象存储,也叫做基于对象的存储,是用来描述解决和处理离散单元的方法的通用术语,这些离散单元被称作为对象。
常见的对象存储有:阿里云对象存储(点击进入产品页面) 和 腾讯云对象存储(点击进入产品页面)了解和购买!
对象存储经常被比作在一家高级餐厅代客停车。当一个顾客需要代客停车时,他就把钥匙交给别人,换来一张收据。这个顾客不用知道他的车被停在哪,也不用知道在他用餐时服务员会把他的车移动多少次。在这个比喻中,一个存储对象的唯一标识符就代表顾客的收据。
他们的区别也可以分为表面区别和本质区别,表面的区别是:对象存储支持的访问接口基本是restful接口,而分布式文件存储提供的是POSIX兼容的文件操作接口;本质区别是:分布式文件存储文件组织方式为目录树,对象存储采用的是扁平的组织方式;对象存储不支持随机读取和写入,put和get都是针对整个文件。简单来说,这三者的本质差别是使用数据的“用户”不同:块存储的用户是可以读写块设备的软件系统,例如传统的文件系统、数据库;文件存储的用户是自然人;对象存储的用户则是其它计算机软件。