论文部分内容阅读
科技的飞速发展和生产力的突飞猛进正在加速产生大量高价值数据,对这些数据的存储和备份需求可以达到PB级(千万亿字节)。尽管数据呈爆炸性增长,但研究表明,重复数据大量存在于信息处理和存储的各个环节,如文件系统、邮件附件、web对象,以及操作系统和应用软件中。传统的数据保护技术如周期性备份、版本文件系统、快照和连续数据保护等更是加速着重复数据的增长,导致网络带宽和存储空间资源的紧缺以及数据管理成本的快速上升。为了抑制数据过快增长,提高资源利用率,降低成本,重复数据删除技术已经成为一个备受关注的研究课题。数据的持续增长和应用的高连续性对备份性能的要求越来越高,在大规模网络备份系统中实现重复数据删除,提高存储空间效率的同时,必须保证系统具有良好的性能和可扩展性。因此,围绕重复数据删除性能和可扩展性,在大规模重复数据删除系统架构、元数据管理、索引维护、高性能数据备份和恢复等方面进行研究,取得了相应的研究进展。针对已有的重复数据删除技术采用单服务器架构、可扩展性较差,难以满足大规模分布式数据备份需要的问题,提出了一种基于集中式管理、网络数据备份的层次化重复数据删除系统架构。该架构由一台主服务器对整个系统进行管理,支持多台备份服务器并行作业。数据流由备份客户端经过备份服务器流入后端存储节点中,实现了控制流和数据流的有效分离。多层数据索引技术把逻辑数据和底层物理数据有效分离开来,支持高性能层次化重复数据删除以及备份服务器层和存储节点层的动态扩展,使得系统具有良好的性能、可管理性和可扩展性。现有的重复数据删除技术在数据写入后台存储系统的过程中在全局范围内查询指纹以消除重复数据。随着备份数据量的增长,用来加速指纹查询的内存数据结构所消耗的存储空间会越来越大,使得系统规模最终受服务器内存空间限制。为此,设计了一种基于小范围检测的指纹过滤器用于在备份过程中对数据进行初步过滤,消除周期性备份产生的重复数据,节省网络带宽,提高备份效率。该技术把指纹查询的范围限定在作业链内,备份的内存开销和系统规模无关,另外,其在备份过程中收集指纹,便于系统使用高性能后处理重复数据删除算法对数据进行集中处理,消除了磁盘索引查询和更新对应用系统的影响。实验表明,该技术能消除备份流中大部分重复数据,既节省网络带宽又减少了需要在后台进一步处理的数据量,提高了系统整体性能。提出了一种后处理重复数据删除算法对备份数据进行集中处理,该算法顺序扫描磁盘索引一次性批处理大量指纹,从而有效消除了指纹查询和索引更新的随机磁盘I/O瓶颈。该算法使用固定大小的存储容器保护新数据块逻辑顺序,支持高性能数据恢复,另外,使用一种无状态路由算法把存储容器分发到后台存储节点中,支持后台存储节点的负载平衡、数据迁移和动态扩展。实验表明,相较于目前主流的重复数据删除技术,该算法在相同内存开销下支持更大的系统物理容量,更重要的是,它支持多服务器并行操作,具有良好的可扩展性。后处理重复数据删除算法顺序扫描数据块索引(磁盘索引)进行批处理指纹查询和索引更新,因而在一定系统规模下维持较小的数据块索引对于提高系统性能来说至关重要。目前在数据块索引空间利用率方面尚没有发现相关的研究工作。因此,设计了一种基于前缀映射的磁盘哈希表作为数据块索引,保证了良好的索引可扩展性,同时着重研究了数据块索引溢出概率和空间利用率问题。研究表明,使用恰当大小的索引桶,既能避免过高的桶内指纹查询开销,又能降低索引溢出概率,提高数据块索引空间利用率,从而有效降低索引存储开销,提高索引扫描性能。