论文部分内容阅读
NoSQL是非关系型数据库技术的总称,它是为满足日益增长的互联网及物联网等应用需求而产生的数据管理技术。本文从概念与特性、数据模型、可靠性和分布式扩展等方面对NoSQL数据库技术进行了综述;剖析了NoSQL数据库代表MongoDB的内部服务机制,在此基础上着重研究了分片部署策略、分片键选择机制以及磁盘碎片化问题解决方案,提出了反范式模式设计理论和基于语义关联、细粒度模式的查询改进算法,并以MongoDB在Web信息采集系统中的应用为背景,分析了非关系型数据库的存储策略和查询设计策略。论文的主要研究内容和成果有:(1)MongoDB存储机制分析与反范式模式设计方法研究。在分析MongoDB面向文档数据存储模型的基础上,根据非关系型数据处理特点提出了反范式模式设计方法。该方法基于数据依赖理论,针对不同依赖关系分别采用分解或联合数据项的策略,实现了非关系型数据库的逻辑模式设计。(2)MongoDB分布式扩展机制与应用优化研究。剖析了MongoDB自动分片机制的分区算法和负载均衡实现;提出了实际应用中分片集群的部署策略;针对分区算法中的分片键,提出了基于分区粒度、写扩展和查询隔离的选择机制;针对磁盘碎片化现象分析产生原因并提出了解决方案。(3)MongoDB查询技术及改进研究。剖析了MongoDB基于简单模式分类、多计划并行的查询处理策略及其存在问题,提出了加入语义关联、细粒度模式分类的改进查询算法,提高了查询处理效率。(4)Web信息采集系统的应用。分析Web信息采集系统的数据库需求,给出MongoDB与SQL Server的系统解决方案;测试MongoDB的反范式模式设计与SQL Server范式模型设计的查询效率,MongoDB因嵌套避免了关联效率提高显著;针对系统常用查询测试MongoDB的不同索引使用方案,证明了复合索引在该应用场景下的高效率。