论文部分内容阅读
存储系统性能增长速度远远低于处理器性能增长速度,CPU(Central Processing Unit)和存储系统之间的性能差距严重影响了系统的整体性能。Cache技术和预取技术可以有效提升存储系统的性能。预取技术是国际上较为热门的研究方向,国内外科研机构提出的预取策略大致分为三类:基于信息提示的预取、顺序预取、基于存取模式的预取。顺序预取策略具有良好的可扩展性、较高的预取准确率并且易于实现。绝大多数预取策略将预取数据和热点数据缓存在统一的Cache中。将这两类数据缓存在单独设计的Cache中增加了各自的灵活性。顺序性检测逻辑一般实现在Cache中,一旦Cache块被替换,记录其上的信息一同丢失。将顺序检测模块实现于单独的数据结构中可以更加灵活地记录和利用I/O访问信息。哈希表可以大大提高在多应用环境下顺序I/O的检测速度和准确性,多级哈希表通过共享和替换可以在有限空间下映射更多的地址并且降低哈希函数的碰撞率。由不同容量子Cache组成的Cache池来缓存预取数据可以在Cache总容量一定的条件下,针对不同量的预取使用相适应的子Cache,提高了Cache空间的利用率。传统的LRU(Least Recently Used Algorithm)替换算法不能完全适应预取Cache的替换要求,通过改进的LRAU(Least Recently Actively Used Algorithm)替换策略使Cache的替换更加利于Cache的有效使用和I/O性能的提升。iSCSI技术和磁盘阵列技术是当今较热门的存储技术,基于iSCSI的磁盘阵列已经被广泛应用。iSCSI Enterprise Target是目前较为流行的开源iSCSI存储系统目标端软件,该软件并无Cache和预取模块。将预取策略实现于该软件的块I/O层,测试结果显示,该预取算法可以从多应用环境下混合的I/O模式中较准确识别顺序I/O,并自适应预取,有效提升混合I/O中顺序部分的性能。