文档介绍:NoSQL 数据库最终一致性的研究
重庆大学硕士学位论文
(学术学位)
学生姓名:王宏
指导教师:罗军副教授
专业:计算机系统结构
学科门类:工学
重庆大学计算机学院
二 O 一三年四月
Research on eventually consistent of NoSQL
database
A Thesis Submitted to Chongqing University
in Partial Fulfillment of the Requirement for the
Master’s Degree of Engineering
By
Wang Hong
Supervised by Associate Prof. Luo Jun
Specialty: Computer System Architecture
College puter Science of
Chongqing University, Chongqing, China
April 2013
重庆大学硕士学位论文中文摘要
摘要
随着 Web 时代的到来和云计算的兴起,传统关系数据库在应付 网
站,特别是超大规模和高并发 SNS 类型的网站时越发显得力不从心,暴露了很多
难以克服的问题,NoSQL 则由于本身的特点得到了迅速发展。
根据 CAP 理论的表述,NoSQL 数据库通常选择放弃强一致性,用最终一致
性的思想设计分布式系统,从而使系统可以达到很高的可用性和扩展性。最终一
致性的具体涵义是:在分布式数据库中各结点的数据,不要求每一时刻都严格保
持一致,只保证最终的一致即可。
最终一致性作为 NoSQL 的重要理论基础,同时也是衡量 NoSQL 性能的重要
指标,对 NoSQL 的应用与发展起着重要作用。现存向量时钟的最终一致性模型由
于无法对全局中任意两个事件的时序进行判断,导致系统的读写性能低、延迟大,
影响了最终一致性的实现。本文提出基于全局向量时钟的最终一致性模型,并沿
着这条主线进行了一系列的分析和研究,主要包括以下几方面:
(1)分析了 NoSQL 数据库:对 NoSQL 的概念、特性、数据模型、整体架构和
应用实例进行了介绍,并研究了 NoSQL 的数据同步机制、可靠性和分布式扩展等
关键技术;
(2)研究了 NoSQL 最终一致性的基本原理:通过对 CAP 理论、BASE 模型的
分析揭示了 NoSQL 一致性的特点,并分别从客户端和服务器端两个角度对一致性
进行深入的研究,进而引出了最终一致性;
(3)提出基于全局向量时钟的最终一致性模型:研究了向量时钟模型,针对它
无法对全局中任意两个事件的时序进行判断的问题,提出了全局向量时钟模型
(GVC),该模型引入了全局时间向量并完善了同步规则;
(4)通过理论证明和实例对比论证了模型的正确性:GVC 解决了向量时钟模型
存在的问题,提升了最终一致性的性能,具有较好的应用价值。
关键词:NoSQL 数据库,最终一致性,全局向量时钟,数据同步
I
重庆大学硕士学位论文英文摘要
ABSTRACT
With the development of the Web era and puting, the traditional
relational database has exposed a lot of problems when applied to the sites,
especially those ultra-large-scale and high concurrency SNS sites, However, NoSQL has
been developing rapidly because of its characteristics.
According to the expression of CAP theorem, NoSQL uses the idea of eventually
consistent instead of strong consistency to design the distributed system, so that system
can achieve high availability and scalability. Eventually consistent spec