首页>新闻资讯>软件开发中的存储如何实现?

软件开发中的存储如何实现?

时间:2019-11-21来源:手机版互联


今天我们也一起来谈一谈关于软件开发中的那些问题。关于软件开发中的存储是如何实现的,以下为大家介绍三个方面:

1. 磁盘基本知识


磁盘大致由盘片、磁头、步进电机等几部分组成组成。


盘面:硬盘一般含有一个或多个盘片,一个盘片包含两个盘面。


磁道:每个盘面被划成多个狭窄的同心圆环,这样的圆环叫做磁道。


扇区:每个磁道的每段圆弧叫做一个扇区,是读写的最小单位。


柱面:所有盘面上的同一磁道,在竖直方向构成一个圆柱,称为柱面。


读写过程:硬盘读取数据时,磁头先移动到读取扇区所在磁道的上方,这个过程耗时叫做磁盘寻道时间,平均时间为10ms。之后,通过盘片的旋转,使得扇区转到磁头的下方,这个过程耗时叫做旋转延迟时间,对于7200转/min的硬盘转一周为60*1000/7200=8.33ms,平均旋转延迟为4.17ms(半圈)。


2. RAID基本知识


RAID(Redundant Array of Independent Disks),即由独立的磁盘组成的具有冗余特性的阵列。其基本思想就是把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使性能达到甚至超过一个价格昂贵、 容量巨大的硬盘。RAID 0,条带化存储,容量增加,并行化,但无冗余,容易单点故障。


RAID 1,镜像存储,写入速率慢,读取速率快,有冗余备份,优点是高可靠、高可用,缺点是高花费。


RAID 2,RAID 0的改进版,使用汉明码进行检测和纠错,适用于连续IO、大块IO(如视频流)。


RAID 3,RAID 3和RAID 2的思路比较相似,使用奇偶校验进行错误检测和纠错,但校验盘单点故障。


RAID 4,RAID 4和RAID 3思路一样,只不过是使用BLOCK进行存储。


RAID 5,校验信息交叉的存储在所有数据盘上,高冗余,高数据传输率,实现复杂。


RAID 6,相比RAID5增加块内的校验,允许同时坏2块硬盘而不丢失数据。


RAID 01,先做条带(0),再做镜像(1)。读写速度快,数据保护能力强,空间利用率50%。RAID 10,先做镜像(1),再做条带(0)。


3. 存储方式


根据网上的资料和理解,用Visio整理了一张图对比了下几种方式:

DAS全称为Direct Attached Storage,即服务器直连存储。如图所示,文件系统直接通过RAID完成对硬件访问。优点是操作简便,经济,缺点是分散式存储,不可集中管理。


NAS全称为Network Attached Storage,即网络存储服务。如图所示,文件系统通过网络暴露出来给应用服务。优点是结构简单。配置使用管理非常方便,可实现跨平台的数据共享。缺点是需要占用网络资源、应用局限性大。


SAN全称为Storage Aera Network,即存储区域网络,如图所示,RAID接口通过网络暴露出来。优点是扩展性强,集中管理,缺点是成本较高,管理维护难度大。


乐虎国际手机下载官网龙八国际娱乐app十博官网app