什么是存储:
存储就是根据不同的应用程序环境,通过采取合理、安全、有效的方式将数据保存到某些介质上,并能保证有效的访问,存储的本质是记录信息的载体。
存储的特性:
数据临时或长期驻留的物理介质
需要保证数据能够及时的被读取或者保存
需要保证数据完整安全有效
什么是文件系统:
文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法和数据结构,即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。
在文件系统中,我们可以看到文件的类型、文件的大小、创建时间等,这些都是文件系统中的信息
存储系统只有底层硬件和上层文件系统配合工作才能够真正的完成对于数据的读写管理,底层硬件只负责对0101这些二进制的读写,真正的帮助用户清晰简洁管理数据的其实是上层的文件系统,而用户直接对接的其实也是文件系统
存储系统的分类(存储的构建方式)
从存储的连接或者构建的方式来看,存储主要分为三种
DAS:直连附属存储
NAS:网络附属存储
SAN:存储区域网络
DAS(Direct Attached Storage):
主机设备或者计算设备直接通过物理口和线缆连接的存储磁盘,从而获得存储资源,如个人电脑装的硬盘就可以看作是DAS存储
优点:简单
缺点:独立的数据存储模式,不能共享访问,可扩展性有限
NAS(Network Attached Storage):
支持联网的存储,不同主机可以通过网络向存储中上传、下载自己的文件,Windows的文件共享就是NAS存储的范畴。NAS存储提供的存储自带文件系统,NAS存储具有以下特点:
主机访问存储必须通过LAN共享
提供的存储已经指定了对应的文件系统
提供网络文件共享功能
支持的协议包括CIFS、NFS
优点:可实现跨平台的数据共享
缺点:应用有局限,比如无法在NAS存储上安装操作系统
SAN(Storage Area Network):
SAN是一种独立于服务器的存储网络,它通过高速连接将存储设备(如磁盘阵列、磁带库等)与多台服务器连接起来,形成一个高性能、高可用性的存储环境。
通过网络将服务器和存储连接起来,这个网络可以是FC网络,也可以是IP网络,这个取决于服务器跟磁针之间是 通过什么样的存储协议通信,SAN存储提供的存储不自带文件系统,它只负责数据的IO读写
优点:可靠性高,可扩展性强
缺点:成本高,维护有难度
SAN存储分类:
SAN存储主要包括两种网络架构的SAN,一种是基于IP网络的IP SAN,另一种是基于FC网络的FC SAN
IP SAN
IP SAN网络它是通过ISCSI协议连接服务器和磁针的,主机和存储之间走还是传统的IP网络
主机端:额外的网卡接口和客户端(OS一般自带)
网络:线速以太网交换机(传统的交换机)
存储端:具备ISCSI的接口
优点:利旧,扩展性好,可以充分利用现网的IT系统硬件,成本比较低
缺点:开销大、可靠性相比FC差,存储协议本身走的是SCSI协议(硬盘接口协议就是SCSI协议),为了兼容IP网络,提出ISCSI协议,但是ISCSI协议开销比较大。其性能略低
FC SAN
FC SAN网络是基于FC协议的,在服务器端需要有专门的FC HBA卡,因为主机和存储之间走的是FC协议,传统的交换机走的是IP网络,所以FC SAN存储中,网络也需要专门的FC交换机,存储也需要具备FC接口
主机端:FC HBA卡
网络:FC交换机
存储端:具备FC接口
优点:可靠性高,性能比IP SAN好
缺点:需要FC网络,扩展性差,成本高
存储连接架构总结
存储的服务类型
块存储
块存储,有时也被称为"块级存储",是一种主要用于在存储区域网络 (SAN) 或云环境中存储数据的技术。它的特性是将裸磁盘空间整个映射给主机使用,包括真实的物理磁盘或者通过RAID、逻辑卷等方式二次划分的逻辑磁盘。主机的操作系统可以识别这些硬盘,并进行分区和格式化操作,使其与服务器内置硬盘的功能并无二致。
文件存储
文件存储,也被称为文件级存储或基于文件的存储,是一种在计算机硬盘驱动器或网络连接存储 (NAS) 设备上组织和存储数据的方法。这种存储方式将数据以文件的形式进行保存,并进一步将文件按照文件夹进行分类,再将文件夹以目录和子目录的形式进行组织,形成一个层次化的存储结构。
对象存储
对象存储是一种基于分布式系统的数据存储服务,其以非结构化格式(称为对象)来存储和管理数据。它将数据存储为对象而不是文件,具有高度可靠性、高扩展性和高性能等优点。
如:前面提到的SAN , DAS,为主机提供的都是块存储,提供高性能的随机I/O和数据吞吐率,延迟低
可扩展性和可管理性较差
为一些高性能,高IO的企业关键业务系统(如企业内部数据库)提供存储。
文件级存储服务
如:NAS,扩展性好、易于管理、价格相对经济
开销高、延迟大,不适合高性能的存储场景
共享文件数据:FTP、家庭NAS存储、医院PACS医疗影像数据
对象存储服务
支持高并行性、可伸缩的数据访问, 管理性好、安全性高、适合大容量存储需求
时延长、不适合频繁更改的数据。
相对静态的文件数据,如备份、档案、视频和音频文件
存储的重要特性及相关技术名词
RAID
RAID:独立磁盘冗余阵列,将多个独立的磁盘整合成为一个RAID组,用来提升磁盘的读写能力
实现RAID功能的部件:服务器有一块单独的RAID卡,存储设备上有相应的RAID控制器
解决了单个磁盘容量的限制
解决了单个磁盘速度的限制
解决了数据可靠性问题
RAID级别:
RADI0:
无冗余的条带化
最少需要1块硬盘,可用容量为所有硬盘加起来的总和
优点:读写性能最高
缺点:不提供冗余,其中某一块硬盘损坏,所有数据全部丢失
RAID0写入:例如条带化大小为64K,若要写1024K文件,文件将会被分为16个小块,同时往RAID0内的磁盘写
RAID读取:假设RAID0由5块物理硬盘组成,读取时则从5个硬盘中同时读取
RAID1:镜像卷
所需物理硬盘数量为N*2,可用容量为50%
优点:允许损坏一块硬盘,提供冗余
缺点:数据写入时,最大只能达到单块磁盘的最大写性能,理论上来说,由于会同时向两块硬盘中同时写入,写性能会有所下降
优点:数据读取时,可以从两块硬盘中同时读取,读性能有所提高
读写:RAID1在写入时会同时向两块硬盘中写入同样的数据,同样,删除时,会同时在两块硬盘中同步删除
如果使用4块盘做RAID1会怎样:系统会自动创建两组RAID1,6块会创建三组.....
如下图。RAID0是将一个文件分成多份,同时往两块硬盘中写,写入性能更高,但无冗余,两块盘只要坏一块数据就丢失了
RAID1是同样一份文件会写两份,写性能会有所下降,但同样的数据会在RAID1组内的两块磁盘内各存一份,所以坏一块硬盘不会导致数据丢失,但开销太大,RAID总容量只要两块磁盘容量之和的1/2
RAID3:带奇偶校验的条带化(已被raid5取代)
RAID3会有专门的一块盘存放奇偶校验数据,RAID5的奇偶校验数据会平均分布存放在RAID5的所有硬盘上,RAID3如果进行数据重构的话,由于奇偶校验数据全部是存放在一块硬盘中的,进行数据重构的时候,奇偶校验盘会成为瓶颈,所以为了解决这个问题,出现了RAID5
RAID5:带奇偶校验的条带化
所需物理硬盘数量>=3,可用容量为N-1
优点:即解决了性能的问题,又解决了冗余的问题
缺点:假设RAID5其中某一块硬盘损坏,换上新硬盘后数据需要重构(重构:根据现有数据和奇偶值算出这块硬盘中的数据),1TB的数据重构时间大约需要10小时,如果重构的过程中会有业务数据写入,重构校验会暂停(业务优先级高于重构优先级)