存储基础知识及相关术语

有时候,不是因为你没有能力,也不是因为你缺少勇气,只是因为你付出的努力还太少,所以,成功便不会走向你。而你所需要做的,就是坚定你的梦想,你的目标,你的未来,然后以不达目的誓不罢休的那股劲,去付出你的努力,成功就会慢慢向你靠近。

导读:本篇文章讲解 存储基础知识及相关术语,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

存储基础知识

前置:存储基本概念

我们现在处于信息时代,每天都在和电脑、手、平板机打交道。我们的工作和生活,已经完全离不开视频、音乐、图片、文本、表格这样的数据文件。

  • 而所有这些数据文件,都需要通过电子设备进行保存,这就是数据存储,简称存储。

【1】存储的基本载体:硬盘

对于普通用户来说,最常见的存储设备,就是硬盘。我们知道,计算机的三大核心硬件,分别是CPU(中央处理器)、内存(Memory)和硬盘(Hard Disk)。CPU负责运算,硬盘负责存储。而内存,是CPU和硬盘之间的桥梁。用于暂时存放CPU中的运算数据。所以内存相当于一个垃圾中转站,用于暂时存放需要清理的生活垃圾。

我们可以用一张图片来说明:

在这里插入图片描述
绝大部分的台式机、服务器、手机,都是内置存储系统。也就是说,它们的硬盘安装在设备内部,相当于正常人的大脑,是生长在我们体内的。

常用的硬盘专用接口:

在这里插入图片描述

手机等数码设备的“大脑”,则是做成了很小的存储芯片,直接焊在主板上。

在这里插入图片描述
我们来看看存储的内部基本结构:

在这里插入图片描述

  • 目前主流的硬盘类型有两种,分别是传统机械硬盘和SSD固态硬盘。
  • 硬盘之所以叫硬盘,是因为它的核心部分是一块或多块由坚硬金属材料制成的盘片。盘片上面涂抹了磁性介质,两面都可以记录信息。在盘面上读/写数据的,是磁头。

在这里插入图片描述
硬盘,也叫磁盘(有点像唱片机)
在这里插入图片描述

上图中,盘面中一圈圈灰色同心圆为一条条磁道。从圆心向外画直线,可以将磁道划分为若干个弧段,每个弧段被称之为一个扇区(Sector,图中绿色部分)。扇区是磁盘的最小组成单元。大家应该看出来了,越靠圆心,扇区越短。那么,是不是越往外,扇区越长,存储的数据越多呢?不一定。老式的硬盘,不管靠内还是靠外,每个扇区的大小是一样的,都是512字节。这种硬盘用柱面-磁头-扇区号(CHS,Cylinder-Head-Sector)组成的编号进行寻址。而现在主流的硬盘,扇区密度是一致的,也就是说,越靠外侧,扇区数越多。每个扇区的大小是4K字节,用一个逻辑块编号寻址(LBA,Logical Block Addressing)。以扇区为基础,一个或多个连续的扇区组成一个块,叫做物理块。所以,硬盘往往又叫块设备(Block Device)。

【2】什么是逻辑卷?什么是文件系统?

为了方便管理,我们可以将硬盘这样的物理块设备,分割成多个逻辑块设备。或者,我们也可以将多个物理块设备,组合成一个容量更大的逻辑块设备。

底层的相关技术和工具,包括RAID(大家可能比较熟悉,也就是磁盘阵列Redundant Arrays Of Independent Disks)、JBOD、卷管理系统(Volume Manager)。Windows的卷管理系统,就是它自带的磁盘管理工具。而Linux的,是大名鼎鼎的LVM(Logical Volume Manager,逻辑卷管理)。我们先说说Windows的。在Windows中,磁盘分为基本磁盘和动态磁盘。默认情况下,用户用的都是基本磁盘。一个基本磁盘可以划分为多个分区,分区类别包括主分区(如:我们常说的C盘)、扩展分区和逻辑分区。
在这里插入图片描述

主分区是硬盘的启动分区,我们常说的“C盘”就是硬盘上的主分区。MBR分区表可以划分出4个主分区。如果使用GPT分区,可以管理128个主分区。除去主分区以外,硬盘剩下的容量就被认定为扩展分区。扩展分区不能直接使用。扩展分区可以分成一个或若干个逻辑分区,也就是我们的“D盘”、“E盘”等。

在这里插入图片描述

动态磁盘是基本磁盘的升级模式。在动态磁盘中,分区叫做卷。卷的出现,就是为了便于对多硬盘进行管理。简单来说,动态磁盘可以将不同硬盘分到一个卷。假如你手中有160G和250G硬盘各一块,如果想划分90G和320G的分区,就可以借助动态磁盘来完成。动态磁盘里面的卷,又分为简单卷、跨区卷、带区卷、镜像卷、RAID-5卷。限于篇幅,就不做具体介绍了。基本磁盘里的分区,现在也被微软改叫为卷。再来看看Linux的LVM工具。其实LVM和动态磁盘的思路差不多的,也是把物理空间变成逻辑空间。首先,物理存储介质进行初始化,变成物理卷(PV,physical volume)。然后,一个或多个物理卷组成一个卷组(VG,Volume Group)。创建卷组之后,再创建逻辑卷(LV,logical volume)。

整个过程,如下图所示:
在这里插入图片描述

LVM主要元素的构成

好了,不管是Windows还是Linux,逻辑卷都有了,是不是可以直接使用它们啦?不行,还差一步。那就是文件系统(File System)。文件系统就像仓库管理员。作为用户,你不需要知道仓库里面到底是什么样子,只需要把货物交给他,他会以一个树形结构目录,登记这些货物。你来取的时候,只需要告诉他路径,他就会把货物交给你。

文件系统有很多种类型,常见的有Windows的FAT/FAT32/NTFS(大家应该很熟悉),还有就是Linux的EXT2/EXT3/EXT4/XFS/BtrFS等。Windows系统下,通过对分区(卷)进行文件系统格式化,再分配一个盘符,我们就可以在“我的电脑”里看到可用的磁盘。Linux系统下,我们需要对逻辑卷进行文件系统格式化,然后执行挂载操作,也就能对存储空间进行使用了。

【3】什么是DAS/NAS/SAN

除了内置存储之外,随着存储容量需求的不断增加,加上维护便利性的需要,计算机系统开始引入了外挂存储。也就是说,大脑不够用了,我们请上了笔记本,俗话说好记性不如烂笔头。外挂存储分为两种,一种是直连式存储(DAS,Direct Attached Storage),还有一种是网络存储(FAS,Fabric Attached Storage)。

DAS直连式存储,一般是使用专用线缆(例如SCSI),与存储设备(例如磁盘阵列)进行直连。

在这里插入图片描述
虽然数据存储设备看似在外部,但直接挂接在服务器内部总线上,是整个服务器结构的一部分。DAS的缺点是存储设备只能连接到一台主机使用,无法共享,成本较高,且安全性可靠性较低。FAS网络存储,是一种多点连接式的存储。它又分为NAS(Network-attached Storage,网络接入存储)和SAN(Storage Area Network,存储区域网络)。这些概念的名字非常像,大家千万别晕。画个图看得明白一些:
在这里插入图片描述

NAS与DAS相比,最大的特点是非直连。它可以通过IP网络,实现多台主机与存储设备之间的连接。

在这里插入图片描述
NAS大大提高了存储的安全性、共享性和成本。但是I/O(输入输出)渐渐成为性能瓶颈。随着应用服务器的不断增加,网络系统效率会急剧下降。为了解决这个问题,出现了SAN存储方案。SAN是在NAS基础上做的演进。它通过专用光纤通道交换机访问数据,采用ISCSI、FC协议。SAN和NAS的关键区别,就在于文件系统的位置。画个图就明白了:
在这里插入图片描述

可以看出,如果说SAN是一块网络硬盘的话,NAS基本上已经像一台独立的服务器了。NAS拥有文件系统,用户可以通过TCP/IP协议直接访问上面的数据。

现在很多家庭都开始使用小型NAS设备,相当于一个小型服务器。在NAS的模式下,不同的客户端可以使用网络文件系统(Network File System)访问NAS上的文件。常见的网络文件系统有Windows网络的CIFS(也叫SMB)、类Unix系统网络的NFS等。FTP、HTTP其实也算是文件存储的某种特殊实现,它们通过某个URL地址来访问一个文件。

1 常见存储设备接口

1.1 IDE接口

IDE的英文全称为”Integrated Drive Electronics”,即”电子集成驱动器”,是曾经主流的硬盘接口。IDE接口也称之为ATA接口。ATA的英文拼写为”Advanced Technology Attachment”。2003年推出SATA(Serial ATA)后,原有的ATA改名为PATA(并行高技术配置,Parallel ATA)。

IDE是曾经普遍使用的外部接口,主要接硬盘和光驱。采用数据并行传送方式,一个IDE接口只能接两个外部设备。

在这里插入图片描述

IDE的工作方式需要CPU的全程参与,消耗的这部分资源会在一定程度上降低操作系统性能。

1.2 SATA接口

SATA(Serial ATA)是目前个人电脑上采用最多的接口。它采用串行连接方式。现在的SATAⅢ能达到的理论传输速度是6Gbps即750MB/s的速度。
在这里插入图片描述

1.3 SCSI接口

SCSI(small computer system interface)小型计算机系统接口,是各种计算机与外部设备之间的接口标准。
SCSI其内有控制芯片,可以代替cpu完成90%多的IO工作(如计算、控制、转换等),CPU不必浪费时间进行等待,可提高整体性能。

在这里插入图片描述

  • SCSI采用链式连接,SCSI总线是SCSI设备之间传输数据的通路,又被称作SCSI通道。它通过SCSI控制器来和硬盘之类的SCSI设备进行通信。
  • SCSI可以连接7—15个设备,由SCSI总线是宽总线(支持16个设备)还是窄总线(支持8个设备)决定。这些设备在SCSI体系结构中称为target,可能是一块硬盘、一个RAID阵列、一个cdrom(只读光盘(CD-Read Only Memory))等可能的设备。
  1. 每个target都必须有自己唯一的ID,在8-bit总线上,这个号码是07,在16-bit总线上,这个号码是015。
  2. ID实际上就是这些设备地址。ID优先权由高到低的顺序为7-6-5-4-3-2-1-0-15-14-13-12-11-10-9-8。
  3. SCSI链的最后一个SCSI设备要用作终结器(terminator),终结器是由电阻组成的,位于SCSI总线的末端,用来减小相互影响的信号,维持SCSI链上的电压恒定。中间设备不需要终结器。一旦中间设备使用了终结器,那么就无法找到终结器后的SCSI设备了。而如果最后一个设备没用终结器,SCSI也会无法正常工作。
  4. 在每个target上还可以继续进行扩展(注意每个target对应一个ID),每个ID可以继续向下扩展最多32个逻辑设备,也称为逻辑单元(LU,logical unit)。每个逻辑单元对应一个设备,使用逻辑单元号LUN(Logical Unit Numbers)标识,LUN的范围是0-31。也就是说,SCSI可以扩展出很多很多存储设备。

在这里插入图片描述
SCSI的数据传输是以块的方式进行的。

在SCSI体系结构中,首先由initiator向target发起会话,此会话不像web服务那样休闲时就断开,而是像ssh服务那样,保持长久连接。在此会话中,initiator会发出scsi命令进行读写数据。

可以将initiator认为是scsi的客户端,它是数据操作的需求方,target是scsi的服务端,它是数据的来源,也就是一堆堆的存储设备。当initiator与target关联后,target上的每一个lu在initiator上会单独显示为一块硬盘格式,即/dev/sd{b,c,d,e…},显示的先后顺序根据lun号码来决定。
在这里插入图片描述

1.4 SAS接口(新一代SCSI技术)

  • SAS是Serial Attached SCSI的缩写,即串行连接SCSI。也就是说SAS是新一代的SCSI技术,它和SATA一样都采用串行技术。

  • SAS技术引入SAS扩展器,使SAS系统可以连接更多的设备,其中每个扩展器允许连接多个端口,每个端口可以连接SAS设备、主机或其他SAS扩展器。

在这里插入图片描述

2 存储方案(存储技术)

所谓的存储方案,就是用单独的软硬件将磁盘或磁盘组管理起来供主机使用。也就是说,存储方案和存储设备是在不同层面的,存储方案是设计如何组织和利用存储设备的。

根据服务器类型分为封闭系统的存储和开放系统的存储

  1. 封闭系统主要指大型机,AS400等服务器。
  2. 开放系统指基于包括Windows、UNIX、Linux等操作系统的服务器。而开放系统的存储又分为内置存储和外挂存储:
  • 开放系统的外挂存储根据连接的方式又分为:直连式附加存储DAS(Direct Attached Storage)和网络化存储FAS(Fabric-Attached Storage);
  • 开放系统的网络化存储根据传输协议又分为:网络附加存储NAS(Network Attached Storage)和存储区域网络SAN(Storage Area Network)。
    目前绝大部分用户采用的是开放系统,其中外挂存储占有目前磁盘存储市场的70%以上。

在这里插入图片描述

目前的外挂存储解决方案主要分为三种:DAS、NAS和SAN。下图虽简单,却描述了这直连式存储和网络存储的区别。

在这里插入图片描述

存储方案内部使用的硬盘多为SATA/SAS,追求高性能也用SSD,经过串联或者RAID之后,对主机提供访问接口。

2.1 DAS存储(直接式存储,如:电脑硬盘)

直接式存储(DAS:Direct Attached Storage),是指将存储设备通过SCSI接口或FC接口直接连接到一台计算机上。DAS不算是网络存储,在存储设备和主机之间没有任何网络设备的参与,只有挂载它的主机才可访问它。

  • 最典型的DAS存储类型就是个人电脑中的硬盘,它和电脑直连,没有经过任何网络设备,也只有这台电脑可以访问它上面的数据。

  • 也就是说,服务器发生故障时,连接在服务器上的DAS存储设备中的数据暂时不能被存取。

  • DAS是最原始最基本的存储方式,缺点在于容量有限、难于共享,从而造成信息孤岛。

在这里插入图片描述
DAS缺陷有二:

(1)DAS存储只能通过与之相连的主机进行访问,不能实现数据与其他主机的共享。
(2)直连式存储与服务器主机之间的连接通道通常采用SCSI或者SAS连接,随着服务器CPU的处理能力越来越强,存储硬盘空间越来越大,阵列的硬盘数量越来越多,SCSI或SAS通道将会成为IO瓶颈;且SCSI ID或SAS ID资源有限,能够建立的SCSI或SAS通道连接有限。也就是容量有限。

2.2 NAS存储(网络存储)

是指将存储设备通过标准的网络连接到一台或一群计算机上。

  • NAS有文件系统和IP地址,可以类似的理解为网上邻居的共享磁盘,或者NFS的服务端,即导出目录的一端。NAS是文件级的存储方法,它有自己的文件系统,如NFS,SMB的CIFS。所以它是真正即插即用的产品。
    在这里插入图片描述

NAS和SAN本质上的不同点在于NAS有自己的文件系统,而SAN的文件系统在应用程序服务器上而非存储服务器上。这样的不同点导致NAS是文件级别的数据传输,而SAN是基于块级别的传输。

  • 对于大量小文件来说,由于每个文件都要查找文件索引号,所在块号等等,这些都会消耗资源和时间,所以导致文件级别的传输要慢的多得多,而块级别的传输则不管某个块属于哪个文件,只要需要就会把块传输出去。
  • NAS性能比SAN要差很多,但相对成本也低很多。
    NAS、SAN都是网络存储,不过SAN是基于块,NAS基于文件,SAN相比而言更加精细

2.3 SAN存储(存储区域网络)

SAN即存储区域网络(Storage Area Network,SAN)。目前有两种类型的SAN,一种是FC SAN(光纤通道的SAN),一种是IP SAN(以太网的SAN,即现在的iSCSI)。

一般都采用光纤通道(Fibre Channel)技术,通过光纤通道交换机连接存储阵列和服务器主机,建立专用于数据存储的区域网络。FC SAN已经相当成熟,成为业界的实施标准。如果是IP SAN,则下图中的FC部分换为以太网,对交换机而言也没有光纤交换机那么严格的要求。

在这里插入图片描述
SAN是基于块级别的数据传输。在应用程序服务器本地有本地文件系统,这是和NAS根本上的区别。

SAN解决方案从基本功能剥离出存储这部分功能,在理论上比其他存储方案要先进一些。

相比于FC SAN,IP SAN的弱点除了在硬件设备上,还在于它要对数据进行TCP/IP的封装,这需要消耗资源(硬件iSCSI使用HBA卡控制芯片来封装不会消耗操作系统资源,但挺贵的)。同时它还要使用以太网,所以网络的情况对其也有很大影响。

在这里插入图片描述
在这里插入图片描述

SAN是目前业界中高端存储的主流标准。

2.4 SAN与NAS区别

为什么提到NAS就不得不提到SAN呢?原因之一是它们的名称有69关系,容易混淆;之二是NAS和SAN既竞争又合作,很多高端NAS的后端存储就是SAN。NAS和SAN的整合也是存储设备的发展趋势。

在这里插入图片描述
从上面的构中可以看到,SAN文件系统分别在每一个应用服务器上;而NAS则是每个应用服务器通过网络共享协议(如:NFS、CIFS)使用同一个文件系统。换句话说,NAS和SAN存储系统的区别是NAS自己管理自己的文件系统。

现在高端存储已经很多都使用SAN+NAS了。如下图。

在这里插入图片描述

  • 在上图的双虚线框表示一台NAS。它通过Fibre Channel从后端SAN获得存储空间,创建文件系统后,再通过以太网共享给服务器。SAN提供的存储单位是LUN,属于block级别的。经过NAS创建成文件系统后,就变成文件级别的了。

  • 如果上图描述的不够清楚,下图就容易理解多了。NAS通过FC Switch连到SAN上,应用服务器再通过Ethernet Switch连到NAS上。同时SAN也直接提供block级别的存储给应用服务器。

在这里插入图片描述

关于NAS和SAN的区别,可以列出很多来。比如带宽大小,距离长短,共享优劣等等。几乎所有区别都是由两个因素衍生出来的。一个是FC与Ethernet,另一个是block与file system。简而言之,如果用户需要通过FC(光纤通道,Fibre Channel)访问block,就用SAN;如果需要通过Ethernet访问file system,就用NAS。

相关术语

1. 备份

名称 概念
冷备份(Cold Backup) 在系统关闭的情况下备份数据,通常需要停机维护
热备份(Hot Backup) 在系统运行时备份数据,不需要停机维护
增量备份(Incremental Backup) 备份增量数据,即与上次备份后新增或修改的数据
全量备份(Full Backup) 备份全部数据,包括新增、修改和删除的数据

2. 存储类型(文件存储、对象存储…)

名称 概念 应用场景
文件存储 文件存储是指将数据存储在文件中,通常是在硬盘或闪存等物理媒介上。文件存储是最常见的存储方式之一,它可以用于存储各种类型的数据,如文本、图像、音频和视频等。文件存储通常使用文件系统来管理数据,文件系统将数据组织成目录和文件的形式,以便用户可以方便地访问和管理数据。文件存储适用于需要频繁访问的数据,如操作系统文件、应用程序文件、日志文件等。 操作系统文件、应用程序文件、日志文件等
块存储 块存储是指将数据分成固定大小的块,并将这些块存储在不同的物理介质上。块存储通常使用独立的存储设备,如硬盘、闪存、光盘等,来存储数据块。块存储可以提供高效的数据访问和管理,因为块存储设备通常具有较高的数据传输速度和较低的访问延迟。块存储适用于需要高性能和高可靠性的应用场景,如数据库、虚拟化、云存储等。 数据库、虚拟化、云存储等
对象存储 对象存储是指将数据存储为对象的形式,每个对象包含数据、元数据和唯一的标识符。对象存储通常使用分布式存储系统来管理数据,这些系统将数据分散在不同的物理设备上,以提高数据可靠性和可扩展性。对象存储适用于需要存储大量非结构化数据的应用场景,如多媒体、大数据分析、备份和归档等。 多媒体、大数据分析、备份和归档等
行存储 行存储是指将数据按照行的方式存储在数据库中,每行数据都有自己的唯一标识符。行存储适用于需要频繁查询和更新的应用场景,如在线交易系统、社交媒体等。 在线交易系统、社交媒体等。
列存储 列存储是指将数据按照列的方式存储在数据库中,每列数据都有自己的唯一标识符。列存储适用于需要进行大数据分析和处理的应用场景,如数据仓库、业务智能等。 数据仓库、业务智能等

参考:
https://www.cnblogs.com/f-ck-need-u/p/9069823.html
https://zhuanlan.zhihu.com/p/166633984

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/148492.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!