论文部分内容阅读
随着网络存储系统的广泛应用,应用对其I/O性能也提出了越来越高的要求。蓝鲸集群文件系统(BWFS)采用带外数据传输的方法,分离元数据流和数据流,客户端直接访问存储设备,为应用提供高带宽、低延迟的共享文件服务。随着BWFS的广泛应用,一些问题也暴露出来。首先BWFS应用平台日益多样化对其客户端软件(ENFS)的可移植性提出了更高的要求;其次BWFS带外数据传输方法优化了大文件应用性能,但是小文件传输延迟比较高,而实际应用又往往混合着大文件和小文件访问。因此如何优化小文件应用也是BWFS必须考虑的问题。本文基于可移植软件分层设计的思想,对ENFS进行了分层设计。该设计中,存储协议层以插件方式存在,以灵活地扩展存储协议。在ENFS可扩展存储协议设计的基础上,提出用带内模式传输小文件数据以优化小文件访问性能。本研究主要内容如下:
⑴对ENFS进行分层设计,复用NFS缓存层,将ENFS与具体操作系统相关部分抽取成适配层,将存储协议层抽取成插件以灵活地扩展存储协议。这种设计方法使得移植工作主要集中在适配层,减少了移植工作量,降低了移植难度。
⑵按照可移植软件的设计方法实现了ENFS及其插件,目前已经能够稳定运行。Dbench测试表明ENFS的性能在多数情况下较原有客户端有所提升,最高时提升了60%。
⑶研究表明,带内模式能有效降低小文件数据传输延迟。基于ENFS可扩展存储协议的设计,文中提出设置文件大小阈值分流大文件和小文件,用带内模式传输小文件数据,以优化小文件性能。文中通过分析和大量的测试选取了32KB作为文件大小阈值的经验值。测试结果表明,32KB文件阈值混合数据传输模式提升小文件密集型应用性能最高达62%。