没有永远,唯有转瞬即逝。而这道理却永远成立,正如死神永生。时间生出一切,又亲手毁灭一切。万物在一段时间内出场,又不容稍迟地退场。但只是万物,“万事”则不然。“事”,或曰“数据”,乃抽象之物,“象”一抽去,“事”则不灭——数据无论保存到什么时候,读取时都和写入时一模一样,须臾无改。但“事”不可凭空存在,必有借“物”而存。此“示事之物”,是所谓“存储”者也。

因存储硬件毁坏或误操作而丢数据,在历史上发生过数次,用痛心疾首也不足以形容这样的事件发生时的体验。当意识到发生了什么以后,大脑会“嗡”地一声,然后痛苦像火山熔岩一点点地溢出来,所及之处将思考之物灼成空洞。数据的背后,都是巨大的时间和精力投入所形成的积累,所以数据的损失决不等于存储的损失,或者不如说存储的损失简直可以忽略不计。随着数据的消逝,一段岁月也化为泡影。说数据人命关天,此言非虚。

数据恢复技术的出现,多少让这个问题得以缓解。然而不用说,也只能是缓解而已。存储硬件的物理损坏部分所涉及的数据,是无法恢复的——不然也就称不上是“物理”损坏了,而像误删除或是误格式化这样的操作,一般而言也是无法恢复全部数据的,因为很难做到在误操作以后一个字节的数据都不写入,而一旦写入,往往就会覆盖掉原先的数据区域——这些区域在删除或格式化后已经被标为可用区域。到底在历史上丢过多少数据而不能恢复呢?想来应该是不少的,就在最近一两年都发生过硬盘损坏而无法做数据恢复这样的事情。那是一块Seagate品牌的7毫米2TB笔记本硬盘,买来700元左右,但恢复费用竟然要2000元。跟流氓没有什么好说的,默默拉黑就可以了。

很多年以来,都想以比较一劳永逸的方法解决存储的可靠性问题。技术的话是早已有之也早已知之,就是所谓独立磁盘冗余阵列(Redundant Array of Independent Disks,RAID)。冗余,这个词本来是多少有些贬义的,然而作为数据术语来说,这个词却像是救星。在数据领域,它有一个更好听也很常用的别名,叫做备份(backup)。实际上,任何提到数据保护(data protection)相关的专业技术,无一不是从这个概念出发的。任何数据,如果不存在两份以上的冗余(或称一份以上的备份、副本,直观地说,就是原始数据的精确镜像,当然也有一些高级的数据保护技术可以不采用精确镜像,而是利用压缩后的副本或校验位等。但是无论采用何种技术,都必须能够可逆地从冗余信息中完整地恢复出原始数据的精确镜像),当然在它毁损之后就不能再恢复——说简单也简单。所不同的,只是冗余的具体数量、冗余更新的频率、冗余存储的位置,以及生成冗余信息并从其出发可逆地恢复的方式这些细节罢了。

但做起来也不是像说起来那么容易的,主要的原因在于成本。RAID硬件一度非常昂贵,其实到今天也绝不便宜,只是现在实现RAID已经不完全是靠硬件了而已。还有,本来大容量外部存储的价格也一直居高不下。要从可靠性的角度做RAID,当然不可能做RAID0(RAID0不知道是谁发明出来的,它并没有采用任何的冗余,却空挂一个名头,没有提高性能又把出错的概率提高了n倍——n是组成RAID0阵列的磁盘个数,可能唯一的用途就是用于RAID10吧),肯定要做RAID1或RAID10。但是做RAID1或RAID10,也就意味着要将存储空间降为组成阵列的磁盘个数(或组数)的n分之一(这样才能保证一份数据有n份冗余)。换言之,就是花n份钱,买1份数据的n倍保障。从实际效果来看,其实2块磁盘组成的阵列就已经能够提供足够强大的保障力度了,因为毕竟2块磁盘同时坏掉的可能性相对还是偏低的,只要在1块磁盘坏掉的时候,及时地更换上1块新的磁盘即可。而另1块磁盘再坏掉时,再把它换掉。这样的过程中,数据是没有损失的。

有些人可能感觉云存储也是一个选项,其实从成本的角度来看,几乎没有性价比。目前,10TB的普通硬盘价格约在每块2000元,使用寿命大约在5年左右。而对象存储10TB的容量加上月均10GB的流量,单月成本也很接近2000元了。当然,如果不使用对象存储,而使用像网盘这样的存储服务,价格要稍低一些,但1TB存储一年也要1000元左右,而10TB的价格呢?

世间居然有QNAP TS-212P这样性价比无敌的NAS产品,淘宝价居然不到700元,真是买不到吃亏、买不到上当。忽略掉网上对它“读写速度一般”的负面评价吧!实测下来,满足家用甚至小微企业应用是丝毫不成问题的。

我们处于一个幸福的时代,可以用不到5000元的成本,换来10TB几乎永不消逝的数据。而且,这些数据可以提供像对象存储一样的便捷访问能力。大概再过一些年,我们可以用类似的成本,来把具备类似容量的存储硬件替换成SSD,以获得快得多的访问速度、高得多的可靠性和长得多的寿命(后两者暂时还没有太多科学依据)。科技的进展是可期的,然而我们却没有必要因为有理想而不肯从理想退让一步。其实即使是理想,也有它的最低形式,从存储的角度来看,我想最低的理想,是已经实现了吧。

发布者:高博

读书人当以时时自省,身居安所而思危,不以学高而自满、不以位右而凌人、不以财大而奢靡。论体力,不及农家之孩童;论经营,不及市井之小贩;论治国,不及小地之长尊,何高之有哉?唯常人不屑用心之所,乃吾用武之地。费数载之心力,研究机器运行,数字变幻之术,此皆不足一提。学问无止境,做人有高低。一日必三自问:“今日有德得乎心邪?”行事非敢乱,求学无敢止,本人自训也。

加入对话

1条评论

  1. 读着读着,我在脑海里感觉到,你的数据里包含着“永不消逝的理想”,这也许就是为什么这篇文章的标题虽然没有明着说,但读了以后却非常鼓舞人心的感觉了吧!因为我觉得你无论是在哪家公司工作,或是自己创业,始终对计算机的科学与技术充满着热情!
    附:我没有那么大的存储需求,但我现在也是两块2TB的硬盘每周同步备份电脑上的数据和存储电脑上放不下的数据(手工处理,两块硬盘尽可能异地——一块放单位一块放家里)。另外,我的理解中,现代SSD其实就是闪存芯片的RAID0加上主控(CPU、I/O,甚至包括掉电时保证最后一次写入完整性的电容)和固件中的算法(页/块映射、垃圾回收)。但正因为闪存的稳定性比机械硬盘高很多,所以拿个几十片来组RAID0也不怕。现在SSD的价格正在越来越低,将来肯定能拿来做RAID1。Good luck!

留下评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据