论文部分内容阅读
随着计算机网络技术的迅速发展以及信息技术的深层次应用,计算机所存储的信息量呈爆炸式增长,云计算与分布式系统已经成为了大数据量处理的主要趋势。作为分布式系统的一种,分布式数据库为结构化的大数据提供了随机访问、实时读写的功能,相比于单机系统,它具有高性能、高可靠性、低成本以及易扩展的优点,因此在大型互联网公司中得到了广泛的应用。
而另一方面,作为系统某一时刻的完全状态,快照是系统在正常运行的情况下,在非常短的时间内创建的完整并且一致的系统镜像。快照不仅为系统提供了瞬时备份与快速恢复的能力,而且还可以应用于负载均衡、系统测试等多种场景。目前大多数文件系统以及数据库中都提供了快照功能,但是在分布式数据库中,快照并没有作为一种基本的功能予以实现。
在深入了解分布式数据库实现原理的基础上,本文首次在分布式数据库HBase上设计并实现了数据表的快照功能,主要分析并解决了快照过程中消息传递机制、快照执行速度、系统锁与同步机制以及异常处理等关键问题。通过利用底层文件系统以及日志系统的特性,不仅使得快照的创建能够在较短的时间内完成,而且将快照所占用的存储空间以及对系统的影响降到了最低。同时,本文也设计并实现了快照的恢复及导入导出等相关功能,通过对快照的恢复,可以将一个数据表快速恢复到快照创建的时刻;而通过快照的导入导出,则为提供了一种分布式数据库在不停机的状态下物理备份的手段,从而加快了分布式数据库备份的速度。在本文最后的测试结果与分析中也可以看出,HBase的快照能够快速的创建与恢复,基本达到了预期的功能。