存储技术的种类或许纷繁芜杂,存储软件的作用也未必都是夸大,但归根结底,最后完成保存数据任务的存储介质不外乎磁盘、磁带和SSD(固态盘)三种。你说光盘?至少现在还可以从宏观上把它和磁带放到一起来看待……
所以,绿色也好,节能也罢,终归是要通过围绕这三种主流存储介质的技术来实现。
磁带在离开驱动器之后不消耗任何能量,基于闪存技术的SSD内部没有运动的机械部件,能耗也比磁盘驱动器要小得多。但是,磁带的性能问题极大地限制了其使用范围,而SSD性能虽高却性价比不佳,至少还要再过两三年才能对磁盘构成实质性的威胁。
既然两种更为“绿色”的存储介质中,SSD一时半会儿还不足以替代磁盘,而磁带的生存空间更是受到磁盘的挤压,无力反攻,那么,磁盘的节能问题就只有靠自己解决了。
有空就歇——MAID
磁盘以其性能上的优势逐步将磁带挤出备份市场,但保存同样数据量所消耗的能源也大幅上升。磁带上的数据如果暂时用不到,完全可以从驱动器甚至磁带库中移出,能耗当然为零。这种本事磁盘因受先天条件所限而无法全盘照搬,只能根据自身情况借鉴一二。
MAID(Massive Array of Idle Disks,大规模非活动磁盘阵列)便是上述思想的产物。MAID最初的理论依据来自“80/20”定律,具体来说就是80%的访问活动围绕着20%的物理存储进行。至少对于备份/恢复应用,这一概念基本成立,于是设计者很自然地想到,那些暂时没有数据被访问的磁盘驱动器,完全可以进入能耗相对较低的待机状态,甚至彻底关闭,需要访问时再“唤醒”也来得及,从而达到节能的效果。
如同其他尚未成熟的技术一样,关于MAID的不同实现方式还有一些争论,譬如磁盘驱动器休眠的深度、级数、触发条件和涉及范围,乃至需要时能够在多长时间内恢复运行。总的来说,MAID的普及程度在逐渐提高,已经从纯粹的VTL(虚拟磁带库)、磁盘备份/归档设备扩展到了相对通用的中端存储系统,但主要适用对象仍然是大容量的SATA硬盘驱动器。
尽量少用——自动精简配置
MAID的原理是暂时不用就休眠,对生产系统而言显然不合适,特别是那些交易型应用——中高端存储系统恨不得把所有的磁盘驱动器都24小时连轴转还嫌不够,怎么能允许有一部分休眠呢?只能另想办法。
传统的SAN存储设备,需要预先为应用分配(Provisioning)存储空间,通常会大于实际所能用到的空间,从而造成浪费。自动精简配置(Thin Provisioning)则通过在写入时才分配相应空间的做法避免了这种现象,减少了所需要购买的存储容量,使用的磁盘驱动器数量也随之下降,由此达到节能的效果。
清理冗余——重复数据删除
自动精简配置能够减少闲置的存储空间,可是却对冗余数据——另一种浪费存储空间的现象——无能为力。
日复一日的备份操作会产生大量的冗余数据,而重复数据删除(Data De-duplication)技术只为相同的数据保留一份副本,其他都替换为指向该副本的指针,因此能大幅度地节省存储空间,进行重复数据删除前后所使用的存储空间比例甚至会高达数十比一。从本质上看,重复数据删除可以被划入数据压缩技术的范畴。
实现重复数据删除的方式主要有两种:第一种在数据写入磁盘之前进行判断,发现重复数据便以指针代替,称为实时处理(in-line),优点是所需磁盘空间较少,缺点是对CPU处理能力要求高;第二种在数据写入磁盘之后才启动去重过程,即所谓的后处理(post-processing),优点是对CPU处理能力要求不是很高,缺点是必须保留较大的磁盘空间作为临时工作区。
存储系统的绿色选择与挑战
虽然不一定具备代表性,但至少已经有一款高端存储系统(IBM DS8000系列)计划在2009年支持自动精简配置之后,于2010年加上重复数据删除,甚至还有……MAID!
不管哪种方式,在进行去重时都会影响系统性能,因此目前重复数据删除技术主要用在备份领域。但是,随着服务器虚拟化的普及,生产系统中由虚拟机带来的冗余数据也将大量增加,意味着主存储同样有必要具备重复数据删除能力。相信随着重复数据删除算法的成熟,和存储系统CPU处理能力的提升,主存储普遍支持重复数据删除技术的日子迟早会到来。
分层存储亦有可为
除了上述的MAID、自动精简配置和重复数据删除等公认的“绿色”技术之外,在存储管理的层面上也可以为节能进行优化。已经深入人心的分层存储管理(如ILM)把经常访问的数据存放在快速的FC/SAS磁盘驱动器上,不常访问的数据存放在相对较慢的SATA磁盘驱动器上,而将归档数据转移到磁带上,这种做法以前主要考虑的是存储设备和管理的成本,但它其实同样能为“绿色”做出贡献。
存储系统的绿色选择与挑战
15K RPM硬盘驱动器的最大容量已经达到450GB,但与1TB的7200RPM硬盘驱动器比起来,单位容量的能耗还是高出数倍
FC/SAS磁盘驱动器的高性能源于其高转速,但这同时也意味着更高的能耗;SATA磁盘驱动器转速较低,可是容量要大好几倍。里外里一算,SATA磁盘驱动器单位容量的能耗只有FC/SAS磁盘驱动器的几分之一。所以,将访问频率相对较低的数据转移到SATA磁盘上,即使总共消耗的存储容量没有减少,但是其中低能耗的SATA磁盘所占的比例更高,仍然可以起到节能的效果。
但是,目前的分层存储还存在着灵活性不足、自动化程度较低等问题,需要存储厂商们尽快加以解决。
在发展中结合
MAID是在物理驱动器的层面上节能;自动精简配置通过减少存储空间分配来节能;重复数据删除则以去掉冗余数据为手段降低存储空间占用,进而达到节能的目的。也就是说,上述三种绿色技术所属的层级依次提高,完全可以组合起来使用,达到更好的效果。
譬如说,在备份应用中,MAID和重复数据删除技术正显现出结合的迹象;某些中端存储系统已兼具自动精简配置和MAID两大功能;不远的将来,高端存储系统也将同时支持自动精简配置和重复数据删除……
至于分层存储管理,作为一项长期的系统工程,我们理应予以更为深入持久的关注。