论文部分内容阅读
以微博、社交网络等为代表的Web2.0互联网应用的兴起及其处理数据量的爆炸性增长,对数据管理的灵活性、可扩展性、高性能的读写有了更高的要求。传统的关系数据库由于模式固定,查询处理过程复杂等原因,不能很好地满足这些新兴互联网应用的需求。为了解决上述问题,NoSQL成为数据库研究和应用领域的一个新热点。许多新型的NoSQL数据库管理系统如BigTable、HBase、Cassandra、MongoDB、Redis等已在很多互联网应用中逐步取代RDBMS。这些数据库通常被统称为“MoSQL”,即非传统的关系型数据库。
在这些非关系型数据库中,文档数据库能够支持复杂的数据类型和复杂的查询,在功能的完整性上最接近于关系数据库,被认为最有可能在某些领域替代关系数据库的下一代数据库。
尽管文档数据库近年来的发展十分迅速,但是在功能完善性和稳定性等方面同久经考验的关系数据库相比仍有不小差距。在索引管理、丰富数据类型、一致性、持久化策略等方面,现有的文档数据库的支持仍不够完善。
针对目前文档数据库存在的一些问题,本文重点研究文档数据库存储管理的设计和实现,主要工作包括:
1、在数据存储方面,我们通过引入属性管理和类型管理,解决目前文档数据库普遍缺乏对元数据信息管理的问题,同时通过属性编码和类型编码,将文档数据转换为紧凑的二进制格式存储到数据库中;
2、在缓存管理方面,我们分析了传统关系数据库基于页面的缓存替换策略的弊端,提出一种更为灵活和高效的缓存管理方案;
3、在数据更新的管理上,为使系统在高并发的写操作下依然能保持高性能,我们将更新操作的持久化过程延迟,提出一种既能保持高可用性又能保障数据安全的持久化更新策略。