针对目前基于内容存储(CAS)系统原型绝大多数因建立在已有的各种文件系统上而使其性能和应用范围受到限制的情况,设计和实现了一种在Linux内核中用作块设备驱动器的CAS驱动器(CASD),它可作为Linux的基本构件组成各种CAS系统以支持不同应用,并且可以用作Linux支持的单机存储系统和客户.服务器网络或对等网络存储系统。论述了此CASD主要功能部件的设计选择、在Linux内的实现方法及其性能评价。在iSCSI存储网络上的性能测试结果表明,此CASD的写性能比Ext2更高,且读性能相近。进一步提高其性能瓶颈在于对文件内容的Hash计算和通过Hash索引查找对象元数据这两个环节。
In consideration of the fact that the performance and applications of most existing content aware storage (CAS) system prototypes are limited due to their implementation based on original file systems, the paper gives the design and implementation of a CAS driver (CASD), which can be used as a block device driver in the Linux kernel, and a build block for building variety of CAS systems to support different applications. The CASD may be used in storage systems running Linux, including single instance storages and client-server or p2p network storages. The results of the experiments on an iSCSI storage network demonstrate the write operation performance of the CASD is much better than that of Ext2, and the read operation performance is similar to that of it. The performance bottleneck lies in computing hashes of file contents and looking up the hash-metadata map table.