1 常见存储类型
因此RAID0在严格意义上说不是“冗余独立磁盘阵列”。RAID0模式一般用于需要快速处理数据但是对于数据的安全性要求不高的场合。这种RAID模式的特点是简单,而且并不需要复杂和昂贵的控制器。采用RAID0模式至少需要2块硬盘,最终得到的存储容量也是这两块硬盘的和。
RAID0的随机读取性能:很好
RAID0的随机写入性能:很好
RAID0的持续读取性能:很好
RAID0的持续写入性能:很好
RAID0的优点:最快的读写性能,如果每块硬盘拥有独立的控制器性能将会更好。
RAID0的缺点:任何一块硬盘出现故障所有的数据都会丢失,大部分的控制器都是通过软件实现的,所以效能并不好。
RAID 0是无数据冗余的存储空间条带化,将数据以条纹化的方式存储在阵列之中,实现性能的增强,但没有数据冗余。具有低成本、极高读写性能、高存储空间利用率的RAID级别,适用于Video / Audio信号存储、临时文件的转储等对速度要求极其严格的特殊应用。但由于没有数据冗余,其安全性大大降低,构成阵列的任何一块硬盘损坏都将带来数据灾难性的损失。
RAID 1是两块硬盘数据完全镜像,数据条纹化的头一半是原始数据,后一半是数据镜像,但被写往RAID 1阵列中的第二个磁盘,RAID 1最少需要2个磁盘。,安全性好,技术简单,管理方便,读写性能均好,但其无法扩展(单块硬盘容量),数据空间浪费大。专门针对性能要求高的应用。
RAID 0+1综合了RAID 0和RAID 1的特点,独立磁盘配置成RAID 0,两套完整的RAID 0互相镜像。它的读写性能出色,安全性高,但构建阵列的成本投入大,数据空间利用率低,不能称之为经济高效的方案。
RAID 3使用一个“奇偶”磁盘来存储冗余信息。奇偶磁盘物理上与数据磁盘相隔离。
RAID 5使用一个“奇偶”磁盘来存储冗余信息。实际上,包括奇偶信息在内的所有数据都以条纹化的形式存储到阵列中的所有磁盘上(没有物理上隔离的奇偶磁盘)。当对一个阵列执行RAID 5保护时,阵列要减去一个磁盘驱动器的容量(用于存储奇偶数据)。最少要求3个磁盘。RAID 5是目前应用最广泛的RAID技术。各块独立硬盘进行条带化分割,相同的条带区进行奇偶校验(异或运算),校验数据平均分布在每块硬盘上。以n块硬盘构建的RAID 5阵列可以有n-1块硬盘的容量,存储空间利用率非常高(见图1)。任何一块硬盘上数据丢失,均可以通过校验数据推算出来。RAID 5具有数据安全、读写速度快,空间利用率高等优点,应用非常广泛,但不足之处是1块硬盘出现故障以后,整个系统的性能大大降低。
图 2 RAID 5实现方式
从技术实现方式上说,RAID技术可以通过软件和硬件两种方式实现,随着硬件系统能力不断提升,软件RAID实现方式越来越成为主流的选择。
标准的RAID写操作,如RAID5中所必需的校验计算,需包括以下几个步骤:
1)以校验盘中读取数据
2)以目标数据盘中读取数据
3)以旧校验数据,新数据及已存在数据,生成新的校验数据
4)将新校验数据写入校验盘
5)将新数据写入目标数据盘
当主机将一个待写入阵列RAID组中的数据发送到阵列时,阵列将该数据保存在缓存中并立即报告主机该数据的写入工作已完成。该数据写入到阵列硬盘的工作由阵列控制完成,该数据可继续存放在Cache中直到Cache满,而且要为新数据腾出空间而必须刷新时或阵列需停机时,控制器会及时将该数据从Cache写入阵列硬盘中。这种缓存回写技术使得主机不必等待RAID校验计算过程的完成,即可处理下一个读写任务,这样,主机的读写效率大为增加。当主机命令将一个数据写入硬盘,则阵列控制器将该数据写入缓存最上面的位置,只有新数据才会被控制器按Write-Back Cache的方式最后写入硬盘。
a)连接磁盘阵列存储
实现方式:使用服务器连接磁盘阵列,数据存储到阵列上有容错功能的硬盘上。
优点:
1)磁盘阵列特有的数据冗余功能,可以保护阵列中的硬盘在发生故障不会导致服务器无法访问到数据,并可在不影响工作的情况(不停机)从其他硬盘恢复回数据。整个过程对用户透明。
2)除了硬盘的容错保护,阵列中的其他硬件设备也提供了完全的保护(电源、风,扇、阵列状态监控),为数据提供一个良好的存储环境。
3)磁盘阵列提供高达160MB/s的数据传输速率,完全可以满足视频数据存储的要求。并且阵列有单独的专用I/O处理器处理视频数据的存储,大大减轻了服务器CPU的负担。
4)磁盘阵列可以在线扩充存储空间(不需要重启服务器或阵列),并且还可以级连磁盘柜,扩展连接硬盘的数量,并提高更高的存储空间。为以后的升级带来方便,保护用户投资。
缺点:磁盘阵列投资稍高,但考虑到视频监控的特点,不失为一种很好的选择。
b)使用NAS网络存储设备
实现方式:把专用的NAS网络存储设备连接到各数据处理点网络中,视频监控数据通过网络存储的NAS设备上。
优点:
1)NAS设备有一定的容错功能,可以提供硬盘的数据冗余。
2)NAS有自己的操作系统,可以防止因为主机宕机而无法访问到数据。
缺点:1)由于直接通过网络存储数据,视频数据流较大,网络负担较重,可能导致网络繁忙而使视频监控有停顿。
c)使用SAN网络存储数据
实现方式:服务器和光纤存储设备连接光纤通讯设备,组成光纤存储网络。数据通过光纤存储网络存入光纤存储设备。
优点:
1)光纤磁盘阵列有全面的容错功能,从硬盘的数据冗余,到电源、风扇的硬件设备冗余,保证了数据的安全稳定。
2)光纤网络提供高达2GB/s的数据传输速率,光纤磁盘阵列有单独的处理器处理数据的存储。
3)提供高容量的存储空间,扩展方便。
缺点:1)投资比较昂贵
4 技术特性
4.1 NAS
基于Linux操作系统,安全稳定
DOM技术,系统免受病毒侵扰
大于1T的的存储容量,以及更高的性价比
支持RAID0、1、5和JBOD,更有效保证数据安全
支持专业备份软件,两级存储,避免网络异常造成的影响
为监控特殊定制的功能,包括按路存储、图象文件管理等技术
更先进的网络架构,平滑扩容,升级方便
回放到桌面,只要有网络的地方就可以方便的回放、管理监控系统
4.2 NAS指标
对于企业存储设备而言,根据其实现方式主要划分为DAS、SAN和NAS三种,分别针对不同的应用环境,提供了不同解决方案。(区别见图2)
图 1三种存储技术比较
1.1 DAS
DAS(Direct Attach STorage):是直接连接于主机服务器的一种储存方式,每一台主机服务器有独立的储存设备,每台主机服务器的储存设备无法互通,需要跨主机存取资料时,必须经过相对复杂的设定,若主机服务器分属不同的操作系统,要存取彼此的资料,更是复杂,有些系统甚至不能存取。通常用在单一网络环境下且数据交换量不大,性能要求不高的环境下,可以说是一种应用较为早的技术实现。
1.2 SAN
SAN(Storage Area Network):是一种用高速(光纤)网络联接专业主机服务器的一种储存方式,此系统会位于主机群的后端,它使用高速I/O 联结方式, 如 SCSI, ESCON 及 Fibre- Channels。一般而言,SAN应用在对网络速度要求高、对数据的可靠性和安全性要求高、对数据共享的性能要求高的应用环境中,特点是代价高,性能好。例如电信、银行的大数据量关键应用。
1.3 NAS
NAS(Network Attached Storage):是一套网络储存设备,通常是直接连在网络上并提供资料存取服务,一套 NAS 储存设备就如同一个提供数据文件服务的系统,特点是性价比高。例如教育、政府、企业等数据存储应用。
2 三种技术比较
以下,通过表格的方式对于三种存储技术进行一个简单的比较。
表格 1 三种技术的比较
录像存储
录像存储是指将监控图像录制下来,并以文件形式存储在存储设备中,并可在以后随时被读出回放。
存储的实现有多种模式,包括DAS(直连存储)、SAN(存储区域网)和NAS(网络存储)等。DAS就是普通计算机系统最常用的存储方式,即将存储介质(硬盘)直接挂接在CPU的直接访问总线上,优点是访问效率高,缺点是占用系统总线资源、挂接数量有限,一般适用于低端PC系统。SAN是将存储和传统的计算机系统分开,系统对存储的访问通过专用的存储网络来访问,对存储的管理可交付与存储网络来管理,优点是高效的存储管理、存储升级容易,而缺点则是系统较大,成本过高,适用于高端设备。NAS则充分利用系统原有的网络接口,对存储的访问是通过通用网络接口,访问通过高层接口实现,同时设备可专注与存储的管理,优点是系统简单、兼容现有系统、扩容方便,缺点则是效率相对比较低。
典型的传统数字硬盘录像机设备一般都采用DAS方式,即自身包含若干硬盘,录像数据进行压缩编码后直接存储在本地硬盘中,回放也从本地硬盘中读出。网络功能只是个附加的功能,主要面向远程终端实时监控本地图像和回放本地录像。在系统比较大时,这种方式必然是分布式存储的,给系统管理带来了麻烦。数字硬盘录像机的发展将使网络成为中心,而规模的增大使得分布式存储的缺点更加显着。采用NAS作为录像的存储设备,解决了传统数字硬盘录像机所限制的这些问题,作为下一代数字录像系统,其优势表现在:
a 优良的设备环境:由于硬盘的不稳定性,需要一个更好的工作环境来延长硬盘的寿命和减少存储的不可用时间。NAS作为专业的存储设备,针对多硬盘环境作了优化设计,让硬盘工作的更稳定、更可靠。
b 专业的存储管理:有效的存储管理在数据量上升时更加显得重要,数据的安全性与冗余性将更受关注。NAS通过专业软件对大容量存储进行管理,增加安全机制及冗余管理,使得存放的数据更便捷、更放心。
c 轻松的容量扩张:对容量的需求日益增加的今日,更加看重存储容量的可扩张性。NAS的容量扩张基本上是Plug&Play的模式,方便用户升级。另外,NAS还可实现系统升级与存储升级的分离,更适合一个逐渐发展的系统。
本系统采用NAS作为录像的存储设备,但从网络可靠性方面考虑,采用二级存储机制,即录像时直接录制在DVR中,在其中保存一定时间,定期再将DVR中的录像转存至NAS中。采用二级存储机制,虽然比直接网络存储复杂,但可以将网络的不可靠因素对系统的影响降到最低,以确保录像数据的完整性。
3 常见存储技术
3.1 RAID技术
RAID(Redundant Arrays of Independent Disks)中文为廉价冗余磁盘阵列。在1987年由美国柏克莱大学提出RAID理论,作为高性能的存储系统,巳经得到了越来越广泛的应用,并成为一种工业标准。RAID的级别从RAID概念的提出到现在,巳经发展了多个级别,有明确标准级别分别是JBOD、0、1、2、3、4、5等,其他还有6、7、10、30、50等。RAID为使用者降低了成本、增加了执行效率,并提供了系统运行的稳定性。
各厂商对RAID级别的定义也不尽相同。目前对RAID级别的定义可以获得业界广泛认同的只有5种,JBOD、RAID 0、RAID 1、RAID 0+1和RAID 5。
(廉价冗磁盘阵列(Redundant Array of Inexpensive Disks, 简称RAID)
a 功能:对磁盘高速存取(提速): RAID将普通硬盘组成一个磁盘阵列,在主机写入数据,RAID控制器把主机要写入的数据分解为多个数据块,然后并行写入磁盘阵列;主机读取数据时,RAID控制器并行读取分散在磁盘阵列中各个硬盘上的数据,把它们重新组合后提供给主机。由于采用并行读写操作,从而提高了存储系统的存取系统的存取速度。
b 分类:RAID可分为级别0到级别6,通常称为:RAID0,RAID1,RAID2,RAID3,RAID4,RAID5,RAID6。)
JBOD的含意是控制器将机器上每颗硬盘都当作单独的硬盘处理,因此每颗硬盘都被当作单颗独立的逻辑碟使用。此外,JBOD并不提供资料备余的功能。
(RAID0:RAID0并不是真正的RAID结构,没有数据冗余,RAID0连续地分割数据并并行地读/写于多个磁盘上。因此具有很高的数据传输率,但RAID0在提高性能的同时,并没有提供数据可靠性,如果一个磁盘失效,将影响整个数据。因此RAID0不可应用于需要数据高可用性的关键应用。
RAID0是具有提速和扩容的目的
在RAID0模式中,数据被分割为一定数量的数据块(Chunk)交叉写在多个硬盘上,一般的来说在RAID0系统中数据被分割的数量同RAID阵列所使用的硬盘的数量是有关的,比如RAID0中采用了3块硬盘,那么数据将会被分为三份依次的写入三个硬盘,通俗的说这种模式其实就是利用RAID技术让系统认为三块硬盘组成一个容量更大的硬盘,因为这个过程没有数据校验所以这种RAID模式是读写速度最快的一种。
RAID0并没有从安全性角度考虑,实际上,如果RAID0当中的一块硬盘坏了,所有数据都会损坏,并且没有办法恢复。这使得RAID0的安全性能非常差,所以很多用户出于安全考虑没有使用RAID0模式。虽然如此,RAID0毕竟是所有RAID方式当中速度最快的一种模式,如果RAID0模式当中有两块硬盘的话,那么RAID0的存储读取数据的速度会是单个硬盘双倍。,如果使用6块硬盘的话,那么理论速率就是单个硬盘的6倍。如果在RAID0模式当中使用不同的硬盘会造成两方面的问题,首先,RAID0的有效硬盘容量会是最小的硬盘的容量乘上硬盘的个数,这是因为如果容量的最小的硬盘存满了之后,RAID0依然会将文件平均分配到各个硬盘当中,此时便不能完成存储任务了;其次,如果RAID0当中的硬盘速度不同,那么整体的速度会是速度最慢的硬盘的速度乘上硬盘的个数,这是因为RAID0模式是需要将上一部的存储任务完成之后才能进行下一步的进程,这样,其它的速度快的硬盘会停下来等待速度慢的硬盘完成存储或者读取任务,使得整体性能有所下降。所以,在这里建议使用RAID0模式的用户最好选择容量和速度相同的硬盘,最好是同一品牌的同种产品。