存储文件的仓库有很多中形式,现在主要用的是(机械)磁盘、SSD、光盘、磁带等等。
拿到这些介质后,首先需要的是“格式化”,格式化就是建立文件存储组织架构和“账本”的过程。比如将U盘用FAT32格式化,我们可以看到是这样架构和账本(如图4):

ͼ4
主引导区:记录了这个存储设备的总体信息和基本信息。比如扇区的大小,每簇的大小、磁头数、磁盘扇区总数、FAT表份数、分区引导代码等等信息。
但为了防止格式化可能的丢弃现象(因为簇号上已经作了标记表明是坏簇,格式化程序可能没有检查就接受了这个“现实”,于是丢弃该簇),最好还是重分区,使用如ibmdm之类的软件还是相当快的,或者ghost覆盖也可以,只是这两个方案都多多少少会损失些数据。另(图14、 15)如果你知道丢失数据的大致存放簇区,可节省不少扫描时间。另(图14、15)如果你知道丢失数据的大致存放簇区,可节省不少扫描时间。
目录区:目录和记录文件所在的位置信息。
数据区:记录文件具体信息的区域。
通过以下的例子来帮助理解什么是FAT文件系统。
假设每簇8个扇区组成一个簇,大小是512*8=4K。根目录下的readme.txt文件大小是10K,如图5:

ͼ5
在这个例子中,我们看到在FAT文件系统,是通过查询FAT表和目录项来确定文件的存储位置,文件分布是以簇为单位的数据块,通过“链条”的方式来指示文件数据保存的文字。
当要读取文件时,必须从文件头开始读取。这样的方式,读取的效率不高。
不同的Linux文件系统大同小异,一般都采取ext文件系统,如图6.

ͼ6
启动块内是服务器开机启动使用的,即使这个分区不是启动分区,也保留。
超级块存储了文件系统的相关信息,包括文件系统的类型,inode的数目,数据块的数目
Inodes块是存储文件的inode信息,每个文件对应一个inode。包含文件的元信息,具体来说有以下内容:
文件的字节数
文件拥有者的User ID
文件的Group ID
文件的读、写、执行权限
文件的时间戳,共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,atime指文件上一次打开的时间。
链接数,即有多少文件名指向这个inode
文件数据block的位置

当查看某个目录或文件时,会先从inode table中查出文件属性及数据存放点,再从数据块中读取数据。
数据块:存放目录和文件数据。
通过读取\var\readme.txt文件流程,来理解ext文件系统,如图7。

ͼ7
硬盘格式化的时候,操作系统自动将硬盘分成两个区域。
当inode资源消耗完了,尽管数据区域还有空余空间,都不能再写入新文件。
总结:Windows的文件系统往往是“串行”的,而linux的文件系统是“并行”的。
再来看分布式的文件系统。
如果提供持久化层的存储空间不是一台设备,而是多台,每台之间通过网络连接,数据是打散保存在多台存储设备上。也就是说元数据记录的不仅仅记录在哪块数据块的编号,还要记录是哪个数据节点的。
这样,元数据需要保存在每个数据节点上,而且必须实时同步。做到这一点其实很困难。如果把元数据服务器独立出来,做成“主从”架构,就不需要在每个数据节点维护元数据表,简化了数据维护的难度,提高了效率。
Hadoop的文件系统HDFS就是一个典型的分布式文件系统。

ͼ8
Block1: host11,host22,host31
Block2: host11,host21,host32
流式写入过程:
1)将64M的block1按64k的package划分;
2)然后将第一个package发送给host11;
3)host11接收完后,将第一个package发送给host22,同时client想host11发送第二个package;
4)host22接收完第一个package后,发送给host31,同时接收host11发来的第二个package。
5)以此类推,如图黑色虚线3所示,直到将block1发送完毕。
6)host11,host22,host31向NameNode和 Client发送通知,说“消息发送完了”。
7)client收到发来的消息后,向namenode发送消息,说我写完了。这样就真完成了。
1.登录电脑版飞信,点击下面的“系统设置”,如图4所示 2.选择下面的“安全与隐私”,再点...3.点击“修改密码”后,就会登录到网页版的个人中心,在这里要根据提示输入“验证码”,就会有验证发送到你的注册的手机上,如图6所示 4.输入手机收到的验证码,如图7所示 5.然后进入“下一步”,在这里就可以修改密码了,如图8所示。第三个问题,类似第二个问题中我们输出的分类结果,影像背景是蓝色的,有时是黑色的,但是在写论文或写文章的时候,往往需要的是白色的背景,那么此时可以要么返回到易康软件中将背景类的颜色改为白色,要么将已经输出得到的分类结果图像在arcgis中打开,然后右键properties-symbology,如图7所示进行设置,便会将背景色去掉(注意这里选中dispalybackgroundvalue时,是要和背景色完全对应的,这里由于背景是蓝色,所以rgb分别为0/0/128,如果背景是黑色,那么rgb应该分别为0/0/0),设置完毕的效果如图8所示。例如,如图3所示,假设下述的情况,其中最初对在正常状态下由实线表示的ber曲线中的最佳残留色散量o进行色散补偿控制,随后,如虚线所示,在osnr中出现未预料的劣化而使得ber曲线暂时发生偏移。
……….
HDFS是分布式存储的雏形,分布式存储将在以后详细介绍。
三、存储介质
仓库有很多种存储的介质,现在最常用的是磁盘和SSD盘,还有光盘、磁带等等。磁盘一直以性价比的优势占据了霸主的地位。
圆形的磁性盘片装在一个方的密封盒子里,运行起来吱吱的响,这就是我们常见的磁盘。磁片是真正存放数据的介质,每个磁片正面和背面上都“悬浮”着磁头。
磁盘上分割为很多个同心圆,每个同心圆叫做磁道,每个磁道又被分割成为一个个小扇区,每个扇区可以存储512B的数据。当磁头在磁片上高速转动和不停换道,来读取或者写入数据。

其实磁片负责高速转动,而磁头只负责在磁片上横向移动。决定磁盘性能的主要是磁片的转速、磁头的换道、磁盘、每片磁片的容量和接口速度决定的。转速越高、换道时间越短、单片容量越高,磁盘性能就越好。

ͼ9

ͼ10

ͼ11
衡量磁盘性能主要参考 IOPS 和吞吐量两个参数。
IOPS就是一秒钟内磁盘进行了多少次的读写。
吞吐量就是读出了多少数据。
▲17、能够自动发现物理机/虚拟机的硬件基本信息,如厂家、型号、cpu型号、cpu个数、cpu核心数、网卡数量、hba卡数量、物理内存总量,能够监控物理及虚拟机的性能指标,如cpu使用率、内存使用率、磁盘i/o、磁盘剩余容量、网卡流量等指标。序列化是最高的事务隔离级别,同时代价也花费最高,性能很低,一般很少使用,在该级别下,事务顺序执行,不仅可以避免脏读、不可重复读,还避免了幻像读。那我们假定一个case,业务应用的iops是10000,读cache命中率是30%,读iops为60%,写iops为40%,磁盘个数为120,那么分别计算在raid5与raid10的情况下,每个磁盘的iops为多少。
目前在X86服务器上我们常使用的 SATA、SAS磁盘性能:

ͼ12
实际生产中估算,SATA 7200转的磁盘,提供的IOPS为60次左右,吞吐量在70MB/s。
210231g520z0ba000331 stem012000g9jw168-039 2tb/64m/7.2k/3.5寸/sata存储硬盘单元s2600华为oceansto存储硬盘批发v1300n s2200 s2300 s2600 s3900 s5300 s5500 s5600s6800e s6900 s5500t s5600t s5800t s6800t s12000等华为oceanspace华为oceanstor磁盘存储系统整机及配件批发tel:13910098771。该软件监控硬盘驱动器/硬盘状态,包括健康,温度和所有的smart (当日自我监控,分析和报告技术,内置硬盘和大多数固态磁盘)为每个磁盘上的值。然而,到了如今固态硬盘跑马圈地的时代,机械存储式弱式微的当下,磁盘碎片整理渐渐淡出了的视野,越来越多的人表示,固态硬盘压根就不需要磁盘碎片整理。
这些指标显然是不能满足存储需要的,需要想办法“加速”。
机械磁盘其实也做了很多优化,比如扇区地址的编号不是连续的。
因为磁片转的够快(7200转/分钟即1秒钟转120转,转一圈是8.3毫秒,也就是在读写同一个磁道最大时延是8.3秒),防止磁头的读写取错过了,所以扇区的地址并不是连续的,而是跳跃编号的,比如2:1的交叉因子(1、10、2、11、3、12…..)。
同时磁盘也有缓存,具有队列,并不是来一个I/O就读写一个,而是积累到一定I/O,根据磁头的位置和算法完成的。I/O并不是一定是“先到先处理”,而是遵守效率。
加速最好的办法就是使用SSD盘。磁盘的控制部分是由机械部分+控制电路来构成,机械部分的速度限制,使磁盘的性能不可能有大的突破。而SSD采用了全电子控制可以获得很好的性能。
1,msata.系统最好装在固态里面.0和sata3.采用闪存存储:安装运行可以看到显示绿色就证明是对齐了,硬盘芯片工作温度在-40-85度都是正常的,但是真的摔到点子上了.对于新盘,也是一种损失还是小心些。硬盘有固态硬盘和机械硬盘(hdd 传统硬盘):ssd采用闪存颗粒来存储,hdd采用磁性碟片来存储。固态硬盘更像u盘的工作原理,由闪存介质存储数据以及主控芯片来控制工作,闪存介质的作用是让集成电路替代盘片,通过不断的充放电来写入和读取数据,并通过主控芯片来完成数据交换。
SLC成本最高、寿命最长、但访问速度最快,TLC成本最低、寿命最短但访问速度最慢。为了降低成本,用于服务器的企业级SSD都用了MLC,TLC可以用来做U盘。

ͼ13
02.寿命,有些人总在担心ssd闪存有写入次数限制,怕ssd会写死,那么860 evo 4tb ssd就根本不需要担心这个问题了。由于ssd采用闪存芯片制造,芯片的写入次数受到一定限制。数字键 9 - 无视黑客入侵次数限制 (可尝试次数依旧会显示下降,但降到0也不会导致入侵失败)。
对应磁盘的最小IO单位扇区,page是SSD的最小单位。
比如每个page存储512B的数据和218b的纠错码,128个page组成一个块(64KB),2048个块,组成一个区域,一个闪存芯片有2个区域组成。Page的尺寸越大,这个闪讯芯片的容量就越大。
但是SSD有一个坏习惯,就是在修改某1个page的数据,会波及到整块。需要将这个page所在的整块数据读到缓存中,然后再将这个块初始化为1,再从缓存中读取数据写入。
对于SSD来说,速度可能不是问题,但是写的次数是有限制的,所以块也不是越大越好。当然对于机械磁盘来说也存在类似问题,块越大,读写的速度就越快,但浪费也越严重,因为写不满一块也要占一块的位置。
不同型号不同厂家的SSD性能差异很大,下面是我们的分布式块存储作为缓存使用的SSD参数:
采用PCIe 2.0接口,容量是1.2T,综合读写IOPS(4k小包)是260000次,读吞吐量1.55GB/s,写吞吐量1GB/s。
在1台SRVSAN的服务器配置了一块SSD作为缓存和12块7200转 3T SATA盘,磁盘只提供1200次、1200M的吞出量。
远远小于缓存SSD提供的能力,所以直接访问缓存可以提供很高的存储性能,SRVSAN的关键是计算出热点数据的算法,提高热点数据的命中率。
用高成本的SSD做为缓存,用廉价的SATA磁盘作为容量层。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-101995-2.html
美国现役主战舰艇
放弃那些陈旧的