总说“内存不足”,你们真的了解存储空间吗?

说到“存储”,咱们会想到什么?是这个?


仍是这个?


又或许是这个?


哈哈,没错,咱们现在处于信息时代,每天都在和电脑、手机打交道。咱们的工作和日子,现已彻底离不开视频、音乐、图片、文本、表格这样的数据文件。

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


▉ 存储的根本载体——硬盘

对于一般用户来说,最常见的存储设备,便是硬盘。

咱们知道,计算机的三大中心硬件,分别是CPU(中央处理器)、内存(Memory)和硬盘(Hard Disk)。CPU担任运算,硬盘担任存储。而内存,是CPU和硬盘之间的桥梁。用于暂时存放CPU中的运算数据。


CPU、内存、硬盘

绝大部分的台式机、服务器、手机,都是内置存储体系。也便是说,它们的硬盘安装在设备内部。

以一般台式机为例,硬盘经过专用接口和数据线,衔接在主板上,完成和CPU、内存的数据衔接。


台式机上安装好的硬盘

常用的硬盘专用接口如下:

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


常见的手机存储芯片:eMMC、UFS(更快)

咱们再来简单看看硬盘的内部结构

目前干流的硬盘类型有两种,分别是传统机械硬盘和SSD固态硬盘。小枣君以咱们比较了解的机械硬盘为例进行介绍。

左边是机械硬盘,右边是SSD固态硬盘  

硬盘之所以叫硬盘,是因为它的中心部分是一块或多块由坚硬金属材料制成的盘片。盘片上面涂抹了磁性介质,双面都能够记录信息。在盘面上读/写数据的,是磁头


硬盘,也叫磁盘(有点像唱片机)

下图显示的是一个盘面:


盘面中一圈圈灰色同心圆为一条条磁道。从圆心向外画直线,能够将磁道划分为若干个弧段,每个弧段被称之为一个扇区(Sector,图中绿色部分)。

扇区是磁盘的最小组成单元。咱们应该看出来了,越靠圆心,扇区越短。那么,是不是越往外,扇区越长,存储的数据越多呢?


不一定。

旧式的硬盘,不管靠内仍是靠外,每个扇区的巨细是相同的,都是512字节。这种硬盘用柱面-磁头-扇区号(CHS,Cylinder-Head-Sector)组成的编号进行寻址。

而现在干流的硬盘,扇区密度是一致的,也便是说,越靠外侧,扇区数越多。每个扇区的巨细是4K字节,用一个逻辑块编号寻址(LBA,Logical Block Addressing)。

以扇区为根底,一个或多个接连的扇区组成一个块,叫做物理块。所以,硬盘往往又名块设备(Block Device)。


▉ 什么是逻辑卷?什么是文件体系?

为了便利办理,咱们能够将硬盘这样的物理块设备,分割成多个逻辑块设备。或许,咱们也能够将多个物理块设备,组合成一个容量更大的逻辑块设备。


底层的相关技术和工具,包含RAID(咱们可能比较了解)、JBOD、卷办理体系(Volume Manager)。

Windows的卷办理体系,便是它自带的磁盘办理工具。而Linux的,是大名鼎鼎的LVM(Logical Volume Manager,逻辑卷办理)。

咱们先说说Windows的。

在Windows中,磁盘分为根本磁盘和动态磁盘。默认情况下,用户用的都是根本磁盘。

一个根本磁盘能够划分为多个分区,分区类别包含主分区、扩展分区和逻辑分区。


硬盘分区主分区是硬盘的发动分区,咱们常说的“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体系下,咱们需要对逻辑卷入行文件体系格式化,然后履行挂载操作,也就能对存储空间进行运用了。

▉ 什么是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地址来拜访一个文件。

▉ 未完待续……

跟着互联网的持续发展,网络上的数据量在不断激增,这给存储体系带来了巨大的压力和挑战。云计算的兴起,会给咱们全新的解决方案吗?

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。