论文部分内容阅读
闪存和固态硬盘近年来受到了学术界和工业界的高度关注。闪存是一种电信号驱动的固态存储介质,具有高性能、低能耗、小巧轻便等特点,它已经被广泛应用于嵌入式系统和移动设备中。随着闪存存储密度不断提高,基于闪存的固态硬盘(Solid State Drive, SSD)逐渐普及。作为电子设备,固态硬盘突破了传统磁盘的机械限制,具有高速读,低噪声、低功耗等优点,它的性能可以缩小存储设备和计算设备的性能差距,有利于解决计算机系统的性能瓶颈。因此,固态硬盘成为一种重要的二级存储设备,在个人PC和企业级存储应用中得到广泛欢迎。但是,固态硬盘也继承了闪存的缺点,包括读写不对称性、擦除磨损等,而且现阶段的软件系统都是针对磁盘设计的,不能完全发挥固态硬盘的性能优势,高昂的存储价格也进一步阻碍了固态硬盘的普及。这些因素导致现阶段固态硬盘无法完全取代磁盘,固态硬盘和磁盘共存才是未来存储系统发展的趋势,因此,混合存储技术的研究课题引起了学术界的关注。基于固态硬盘和磁盘两种不同介质存储设备的混合存储技术是一个全新的研究课题。针对这一背景,本论文对混合存储和闪存索引技术领域的已有研究成果进行总结,分析了该领域研究的关键问题,并对混合存储和固态硬盘上的索引技术展开了研究工作。基于固态硬盘和磁盘的混合存储技术主要面向3种存储模型展开研究:a.主存-磁盘-固态硬盘、b.主存-固态硬盘-磁盘、c.主存-固态硬盘&磁盘。a类存储模型针对低端固态硬盘提出,以磁盘作为固态硬盘的写缓存,利用磁盘来优化固态硬盘的随机写,降低固态硬盘的写磨损;b类模型针对高端固态硬盘,以固态硬盘作为磁盘的缓存设备,利用固态硬盘的高性能来提高存储系统整体性能;c类模型将固态硬盘和磁盘作为同级的存储设备进行管理。本论文分别在3种存储模型下,对混合存储中的关键技术,如数据划分、迁移操作、多级缓存、混合索引等进行深入研究,提出了一系列混合存储的算法,包括利用页面访问信息计算数据读写倾向性,利用访问冷热度的思想分析页面的访问频度,利用聚块迁移的方法降低迁移代价,以及针对读写不对称性的不对称混合机制等等。为了促进固态硬盘在混合存储系统中的高性能应用,本论文对固态硬盘相关的B+树索引也展开了研究工作。论文首先总结了固态硬盘上B+树研究的常见方法,分析了B+树索引的读写特点,指出传统的B+树结构是一种读写随机性很强的结构,然后论文基于混合存储系统和单一的闪存设备分别对B+树进行了改进优化。在混合存储系统中,本文提出了一种适应磁盘和固态硬盘特点的新型混合B+树,通过改进混合B+树的叶子节点,减少了整个B+树的写操作,并且固态硬盘使B+树的访问性能也得以提高;在单一闪存设备上,本文基于“以读换写”的思想,提出采用Bloom Filter的方法对溢出节点机制进行改进,成功解决了溢出节点机制中读代价过高的问题,同时实现了读写代价的优化。本论文还讨论了闪存以及混合存储研究缺乏硬件环境支持的问题,将这些问题总结为硬件约束对研究工作的妨碍,为此,本文从硬件实现和软件仿真两个方面对硬件约束问题尝试解决。在硬件实现方面,本文提出一个软件硬件结合的实验平台以支持固态硬盘技术的研究工作;在软件仿真方面,本论文基于DiskSim提出了一个混合存储的仿真实验平台,实现了比较准确的硬件仿真。论文的主要贡献包括以下几个方面:(1)基于固态硬盘和磁盘同级的架构,提出一种时间敏感的混合存储模型。该模型通过页面访问信息计算读写倾向,通过访问热度使统计信息的影响随着时间衰减,从而实现对负载变化的快速感应,并且通过性价比分析获得该模型下最佳的固态硬盘和磁盘比例。(2)基于磁盘作写缓存的架构,提出一种具有不对称处理机制的混合存储模型。该模型通过不对称的迁移触发机制和不对称的迁移操作方式,实现了对固态硬盘写操作的优化。(3)基于固态硬盘作缓存的架构,提出一种新型的B+树叶子结构,利用固态硬盘和磁盘的特点进行互补,不仅降低B+树的整体写代价,而且在保证性能的前提下降低了B+树对缓冲区的依赖,这是传统算法在混合存储上的改进。(4)在单一闪存设备上,提出一种基于溢出节点机制和Bloom Filter的B+树结构。利用溢出节点机制大幅降低写代价,利用Bloom Filter弥补溢出节点机制的缺点,实现了对读代价的控制。通过该方法,本文不仅使读写代价都得以优化,而且将B+树整个结构建立在数学分析基础上,使B+树优化问题转变为一个数学分析问题而和设备参数无关了。(5)针对闪存相关研究中的硬件约束问题,本文分别从硬件设计和软件仿真两个方面提供了解决方案,使研究者可以方便地在多个闪存设备上展开研究工作,为该领域研究的发展奠定了基础。