APP下载

云存储数据缩减技术研究

2012-06-09胡新海

关键词:存储空间精简存储系统

胡新海

(陇南师范高等专科学校,甘肃 成县742500)

0 引言

随着计算机技术及其相关网络应用的飞速发展,Web2.0的浪潮使得大众可以参与信息的制作与编辑,从而导致信息增长具有无限的趋势。这种信息量的不断膨胀,人们对数据存储中的存储容量、高性能、高安全性、高可用性、可扩展性、可管理性等不断提出更高的要求。信息量呈现爆炸式增长趋势,使得存储技术急需提高。

为应对数据存储的急剧膨胀,企业需要不断购置大量的存储设备来满足不断增长的存储需求。权威调查机构的研究发现,企业购买了大量的存储设备,但是利用率往往不足50%,存储投资回报率水平较低。数据量的急剧增长为存储技术提出了新的问题和要求,怎样低成本高效快速地解决无限增长的信息的存储和计算问题摆在科学家的面前。如何确保数据的一致性、安全性和可靠性,如何实现不同数据的高效管理和网络上的数据集中访问等等。所有这些都对现有的存储技术提出了新的挑战,期待着新的网络存储技术及其产品的出现,从而也使得更多的网络存储技术迅速崛起。

目前,云计算技术的兴起使得高效低成本网络存储技术已成为计算机领域的研究热点。通过云存储技术不仅解决了存储中的高安全性、可靠性、可扩展、易管理等存储的基本要求,同时也利用云存储中的数据缩减技术,满足海量信息爆炸式增长趋势,一定程度上节约企业存储成本,提高效率[1-2]。本文通过对云计算技术中的云存储数据缩减技术的研究,比较分析了几种数据缩减技术的优缺点,为用户选择云存储数据缩减技术提供有力的参考。

1 云存储与云计算

云计算是一种新型的计算模式和用户体验,能够把IT资源、数据、应用作为服务,按照标准组件的方式通过公共或私有网络提供给最终用户,并且实现了灵活的计价和收费模式。同时,云计算也是一种新的基础架构管理方法,能够把大量的、高度虚拟化的资源高效地管理起来,组成一个庞大的资源池,并通过具有弹性和可扩展的方式统一提供服务[3]。

云计算的目标是将计算资源集中起来,并由软件实现自动管理,动态创建高度虚拟化的资源提供给用户使用。云计算数据中心的计算资源可以自动地管理和动态地分配、配置、部署、重新配置以及回收,也可以动态安装软件和应用。

云存储的概念与云计算类似,它是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。云存储的结构层次是主要由存储层、基础管理层、应用接口层和访问层4部分构成[4]。在此系统中存储层中配置了大量的存储设备,云存储系统成为高效管理存储设备的系统,从而形成了一个以数据存储和管理为核心的云计算系统。

2 云存储数据缩减技术

存储层是云存储结构中最核心、最基础的部分。对于此层,如何实现充分利用已有的设备,提高设备的利用率,人员的效率,并减少运营成本,从而获得存储管理工具、技术和实践的标准化。从购买更少的磁盘来减少每年的支持费用,到减少存储管理相关的运营花费减少存储管理相关的费用,节约成本。通过软件和硬件的方式可以减少数据信息量,以解决目前由于设备不足引起的海量信息存储问题。目前常用的数据缩减技术主要有本文中提到的几类,每一类都有自己的有优势,同时也有自身的一些不足之处,如果在实际使用中,有选择地将某几方面的数据缩减技术结合在一起应用,发挥优点,将为云存储环境中解决大量数据存储提供有力技术支持。

2.1 自动精简配置

自动精简配置是一种存储管理的特性,核心原理是“欺骗”操作系统,让操作系统认为存储设备中有很大的存储空间,而实际的物理存储空间则没有那么大[5]。传统配置技术为了避免重新配置可能造成的业务中断,常常会过度配置容量。在这种情况下,一旦存储分配给某个应用,就不可能重新分配给另一个应用,由此就造成了已分配的容量没有得到充分利用,导致了资源的极大浪费。而精简配置技术带给用户的益处是大大提高了存储资源的利用率,提高了配置管理效率,实现高自动化的数据存储。

自动精简配置技术是利用虚拟化方法减少物理存储空间的分配,最大限度提升存储空间利用率[6-7]。这种技术节约的存储成本可能会非常巨大,并且使存储的利用率超90%。通过“欺骗”操作系统,造成的好像存储空间有足够大,而实际物理存储空间并没有那么大。自动精简配置技术的应用会减少已分配但未使用的存储容量的浪费,在分配存储空间时,需要多少存储空间系统则按需分配。自动精简配置技术优化了存储空间的利用率,扩展了存储管理功能,虽然实际分配的物理容量小,但可以为操作系统提供超大容量的虚拟存储空间。随着数据存储的信息量越来越多,实际存储空间也可以及时扩展,无需用户手动处理。利用自动精简配置技术,用户不需要了解存储空间分配的细节,这种技术就能帮助用户在不降低性能的情况下,大幅度提高存储空间利用效率;需求变化时,无需更改存储容量设置通过虚拟化技术集成存储,减少超量配置,降低总功耗。

自动精简配置这项技术最初由3Par公司开发,目前支持自动精简配置的厂商正在快速增加。这项技术已经成为选择存储系统的关键标准之一。但是并不是所有的自动精简配置的实施都是相同的。随着自动精简配置的存储越来越多,物理存储的耗尽成为自动精简配置环境中经常出现的风险。因此,告警、通知和存储分析成为必要的功能,并且对比传统环境,其在自动精简配置的环境中扮演了更主要的角色。

2.2 自动存储分层

自动存储分层 (AST)技术主要用来帮助数据中心最大程度地降低成本和复杂性。在过去,进行数据移动主要依靠手工操作,由管理员来判断这个卷的数据访问压力或大或小,迁移的时候也只能一个整卷一起迁移[8]。自动存储分层技术的特点则是其分层的自动化和智能化。

传统配置方式与自动精简配置方式比较是一个整卷一起迁移(图1)。新技术的特点则是其分层的自动化和智能化。自动存储分层是存储上减少数据的另外一种机制。一个磁盘阵列能够把活动数据保留在快速、昂贵的存储上,把不活跃的数据迁移到廉价的低速层上,以限制tier1存储的花费总量。自动存储分层的重要性随着固态存储在当前磁盘阵列中的采用而提升,并随着云存储的来临而补充内部部署的存储。自动存储分层使用户数据保留在合适的存储层级,因此减少了存储需求的总量并实质上减少了成本,提升了性能。

图1 自动存储分层整卷迁移

数据从一层迁移到另一层的粒度越精细,可以使用的昂贵存储的效率就越高。子卷级的分层意味着数据是按照块来分配而不是整个卷,而字节级的分层比文件级的分层更好。

如何控制数据在层间移动的内部工作规则,决定需要把自动分层放在正确的位置的努力程度。一些系统,是根据预先定义的什么时候移动数据和移动到哪一层。相反的,NetApp公司和Oracle公司(在Sun ZFS Storage 7000系列中)倡导存储系统应该足够智能,能重复数据删除,能自动的保留数据在其合适的层,而不需要用户定义的策略。

2.3 重复数据删除

物理存储设备在使用一段时间后必然会出现大量重复的数据。“重复删除”技术(Deduplication)作为一种数据缩减技术可对存储容量进行优化。它通过删除数据集中重复的数据,只保留其中一份,如图2所示,从而消除冗余数据。使用Dedupe技术可以将数据缩减到原来的1/20~1/50。由于大幅度减少了对物理存储空间的信息量,进而减少传输过程中的网络带宽、节约设备成本、降低能耗。

图2 删除重复数据

重复数据删除技术原理Dedupe按照消重的粒度可以分为文件级和数据块级(图2)。可以同时使用2种以上的hash算法计算数据指纹,以获得非常小的数据碰撞发生概率。具有相同指纹的数据块即可认为是相同的数据块,存储系统中仅需要保留一份。这样,一个物理文件在存储系统中就只对应一个逻辑表示[9]。

NetApp公司为其所有的系统提供重复数据删除选项,并且可以针对每个卷进行激活。NetApp公司的重复数据删除并不是实时执行的。相反,它是使用预先设置的进程执行的,一般是在闲暇时间执行,通过扫描把重复的4kB数据块替换为相应的指针。

与NetApp公司相似,Oracle公司在其Sun Storage ZFS 7000系列系统中也具备块级别重复数据删除的功能。与NetApp公司不同的是,去重是在其写入磁盘时实时执行的。戴尔公司获得了内容感知的去重和压缩技术,并企图把这种技术整合到其所有的存储系统中。

2.4 数据压缩

数据压缩技术是提高数据存储效率最古老最有效的方法之一。为了节省信息的存储空间和提高信息的传输效率,必须对大量的实际数据进行有效的压缩。数据压缩作为对解决海量信息存储和传输的支持技术受到人们极大的重视。数据压缩就是将收到的数据通过存储算法存储到更小的空间中去。随着目前CPU处理能力的大幅提高,应用实时压缩技术来节省数据占用空间成为现实。这项新技术就是最新研发出的在线压缩(RACE),它与传统压缩技术不同。对RACE技术,当数据在首次写入时即被压缩,以帮助系统控制大量数据在主存中杂乱无章地存储的情形,特别是多任务工作时更加明显。该技术还可以在数据写入到存储系统前压缩数据,进一步提高了存储系统中的磁盘和缓存的性能和效率。

压缩算法分为无损压缩和有损压缩。相对于有损压缩来说,无损压缩的占用空间大,压缩比不高,但是它有效地保存了原始信息,没有任何信号丢失。但是随着限制无损格式的种种因素逐渐被消除,使得无损压缩格式具有广阔的应用前景。

数据压缩中使用的LZS算法基于LZ77(如图3)实现,主要由2部分构成,滑窗(Sliding Window)和自适应编码(Adaptive Coding)[10]。压缩处理时,在滑窗中查找与待处理数据相同的块,并用该块在滑窗中的偏移值及块长度替代待处理数据,从而实现压缩编码。如果滑窗中没有与待处理数据块相同的字段,或偏移值及长度数据超过被替代数据块的长度,则不进行替代处理。LZS算法的实现非常简洁,处理比较简单,能够适应各种高速应用。

图3 LZ77算法示意图

数据压缩的应用可以显著降低待处理和存储的数据量,一般情况下可实现2∶1~3∶1的压缩比。

压缩和去重是互补性的技术,提供去重的厂商通常也提供压缩。而对于虚拟服务器卷、电子邮件附件、文件和备份环境来说,去重通常更加有效,压缩对于随机数据效果更好,像数据库。换句话说,在数据重复性比较高的地方,去重比压缩有效。

2.5 存储虚拟化

随着存储需求的激增,物理存储设备也随之大增。这种分散的异构存储资源最终使管理变得异常困难,致使存储资源不能被充分利用,其存储利用率不到50%。解决此问题的方法之一就是存储虚拟化。虚拟存储是指一种将不同类型的存储物理媒介和不同层面的存储子系统通过软硬件技术转换到统一的用户存储应用中的技术[11]。存储虚拟化是一种逻辑存储形式,将分散的存储资源整合抽象成一个单一的逻辑资源,使得管理员仅对一个单一的存储资源进行智能化有效地管理存储数据。虚拟化将存储资源的物理特性掩盖起来,用户感觉到的存储资源是巨大的,可以自由调配的[12]。这样用户不再关心存储资源的物理结构,简化了管理过程。克服了传统数据存储过程的局限性,能够更加充分地利用异构平台的海量存储空间和高效的数据传输能力,从而为用户提供一个容量大、数据传输性能高的存储系统,以实现最大化存储利用率,减缓存储需求。

2.6 选择合适的RAID级别

“选择合适的RAID级别”也是数据缩减技术考虑的一个主要方面,而且不像其他数据缩减方法,这是所有存储系统都可以使用的一个选项,但它对于磁盘的需求、性能和可靠性都有着很大的影响[13]。如果不考虑可靠性缺陷,RAID 0(跨所有磁盘的块级别条带,无校验或镜像)会是最划算和最高性能的选择,但单个磁盘故障将会丢失整个RAID组数据的缺点。另一方面,RAID 1(镜像,无校验或条带)和RAID 10(条带化磁盘组镜像),结合了高性能和高可靠性,但需要两倍的磁盘容量,因此也是站在数据缩减的对立面的。RAID 5(块级别条带化,分布式校验)尽管需要一块额外的磁盘,但已成为近些年来最好的折衷方案了,但随着磁盘容量的增长,重建时间也越来越长,在单盘故障后,RAID组重建的时候,丢失两块磁盘的风险已经增加到一个不舒服却不得不接受的水平。因此,存储厂商们采用了RAID 6,通过对RAID 5增加一块额外的校验磁盘,使其能够经得起2次磁盘故障而不丢失数据,但随之而来的有不同程度的性能影响,这与实施情况有关。在购买一个新存储系统的时候,RAID 6和RAID 6的性能指标都是要考虑的事情。

3 结语

通过对云存储系统应用中的几种数据缩减高效存储方案的选取,很大程度上缓解了数据存储时海量数据的压力,缩减了数据的信息量。对这几种方案的比较与分析,每种方案都有自己的优点与缺点,在实际的应用中,如果综合运用多种技术,可以获得最佳的数据存储效率。

[1]金崇英,李小勇,白英彩.海量存储系统的发展与展望[J].计算机应用与软件,2011,28(8):193-195.

[2]王德政,申山宏,周宁宁.云计算环境下的数据存储[J].计算机技术与发展,2011,21(4):81-84.

[3]Michael Miller.云计算[M].姜进磊,孙瑞志,向勇,等,译.北京:机械工业出版社,2009:7-10.

[4]Grossman R L,Gu YH,Sabala M,et al.Compute and storage clouds sing wide area high performance networks[J].Future Generation Computer Systems,2009,25(2):179-183.

[5]晏强.云存储技术研究[J].计算机与信息技术,2011,12:22-24.

[6]冯凯平.大数据量“高效存储”新技术探析[J].价值工程,2011,7:143-144.

[7]邱红飞.存储的自动精简配置技术应用研究[J].电信科学,2010,11:12-17.

[8]王跃清.混合结构数据库中基于页迁移的存储分层算法[J].计算机应用,2010,30(11):2962-2964.

[9]廖海生,赵跃龙.基于MD5算法的重复数据删除技术的研究与改进[J].计算机测量与控制,2010,18(3):635-638.

[10]郑翠芳.几种常用无损数据压缩算法研究[J].计算机技术与发展,2011,21(9):73-76.

[11]谭生龙.存储虚拟化技术的研究[J].微计算机应用,2010,31(1):33-37.

[12]付云生,王开.云虚拟存储技术的研究与比较[J].计算机科学,2011,38(10A):202-204.

[13]石方夏,岳凤芝.信息化建设中的RAID技术应用分析[J].现代电子技术,2010,17:59-63.

猜你喜欢

存储空间精简存储系统
基于多种群协同进化算法的数据并行聚类算法
基于区域分割的多视角点云精简算法
苹果订阅捆绑服务Apple One正式上线
分布式存储系统在企业档案管理中的应用
用好Windows 10保留的存储空间
天河超算存储系统在美创佳绩
时常精简多余物品
一种面向应用的流量监测精简架构设计
华为震撼发布新一代OceanStor 18000 V3系列高端存储系统
一种基于STM32的具有断电保护机制的采集存储系统设计