一个新的存储系统尝试-WOFS
我对以往的所有的存储系统的感觉中,刻录光盘是我的最爱,尽管我一直没有刻录机,但是CDR式刻录光盘却是一种给我全新感觉的存储方式.以下谈谈它的优点.
可刻录光盘作为WOROM(Write Once Read Only Memory)的一种,其实我最喜欢的还是他的WORO.当数据一旦被写入,从理论上讲他将永远存在,尽管这样的存储空间利用效率低下,但是,读取速度却是RAM类存储器无法相比的.为了达到顺序读取而提高读取速率.RAM内存往往要有专门的算法用来管理内存空间,当然,这部分是由OS来实现的.RAM硬盘(也就是普通硬盘了)是通过"磁盘碎片整理"来实现的.而WOROM中的WO就决定了数据不会再被复写,顺序的读出也就是永久的事情了.
而另外一方面的问题就是数据的安全性.大概大家都有过数据文件被误删除的经历.其痛心疾首难以形容.然而,对于WOROM从理论上讲不存在认为误删除的问题.所有的数据都有永久的保存,当然此处谈及的是理想情况,介质损坏另外考虑.
Shadows作为一种存储方式的创新需要有足够的新意才能满足一部分人的需要,而不是一定要满足所有人的需要.在Shadows中存储介质的总容量实际上是可以随着新邮箱的添加而逐渐增加的.而且存储介质的成本又很低廉,相对比较适合于实现WOROM的文件系统实现WOFS-Write Once File System.
所有的数据使用一个足够长的索引方式,比如用几个32bit的数据项来确定一个字节,而最终索引所有的存储空间.
值得注意的是WOROM不同于以往的RAM存储方式,WOROM由于不可复写,所以数据量会迅速增大,而且并不是适合于所有的应用,当然,对于有很高安全性要求的日志文件是一个再好不过的选择,但是对于一些磁盘缓存文件,比如pagefile,简直是一个噩梦.所以,作为已有存储方式的一种补充,WOROM更加适合于数据备份类.
一个比较严重的问题就是FAT的组织,一个数据系统应该具有增删查改几个方面.WOROM应该高于普通的CDR类的系统,而提供数据的删除功能.否则一个文件总量和数据总量都不断增加的存储系统,查询将会是一个越加蹩脚的问题.而对于WOROM的删除应该是仅仅在FAT中的手脚而已,而不应该直接删除原有数据.这样,在需要数据恢复的未来这将是不可避免的.从存储方式上讲FAT是很不适合于存放在WOROM中的,因为需要经常修改.当然并不代表不可能实现.
数据转存:一个WOROM由于索引长度的有限,和查询的越加困难,总是需要更换存储介质的.一般来说,更换存储介质时,原介质已经保存了大量的数据,只有部分数据是未经删除的有用数据,而其他部分仅仅用于恢复数据.转存时,只需要把未经删除的数据复制到新的介质上,并且复制FAT即可.以前用过的WOROM可以用于永久备份.
数据恢复:这个WOROM一个很重要的应用方式,提供了很高的数据安全性,当一个文件被误删除时,可以通过查找每个簇来找到一个文件,进而通过簇连接来恢复整个文件.
数据的泄漏安全性:这个是WOROM一个薄弱方面,尽管提供一个用于永久删除一个数据文件的API函数是很容易的,但是实际上总会有一些自以为聪明的共享软件作者会利用这个API来提供所谓的"空间再利用"等等功能,进而破坏了WOROM的数据恢复特性,所以一方面应该对WOROM的数据进行加密,提高存储介质的访问安全性等等外在的安全方法.另外就是提供一个API来删除一个文件,而删除后数据区将会被从此遗弃,无法被重新利用,防止WOROM又走回到RAM的旧路上去.
今天就想了这么一点,我还在努力的查阅FS的接口资料,很不好找,希望大家可以祝愿我早日找到.现在有2条路,一个是提供给应用程序以VFS(Linux的虚拟文件系统接口),另外就是实现POSIX的文件系统接口.