分布式数据库原理、架构与实践
上QQ阅读APP看书,第一时间看更新

序一

分布式数据库是分布式计算与数据库结合的产物。分布式数据库的概念早就存在,但是直到最近才真正引起产业界的高度重视。这得益于互联网和云计算技术的高速发展与广泛应用。以“国家政务服务平台”为例,据称其实现了统一身份认证服务、统一证照服务、统一事项服务、统一好差评等体系。平台的数据不是集中存储的,而是分散存储在全国多个数据中心的多个数据库系统中,而且许多“事项服务”类应用还会要求跨域、跨库访问。这个系统刚刚起步,提供的服务还很有限。可以想象,随着这个系统汇聚的数据越来越多,支持的应用越来越丰富,数据的一致性问题、系统的效率问题等都会显现出来。更进一步,这个系统由于支撑着日常的行政服务,对高可用性还会提出更高的要求。凡此种种,都需要分布式数据库技术的支持。分布式数据库将会越来越重要。

海翔在分布式数据库技术上辛勤耕耘多年,广泛阅读文献,对分布式数据库的一些基本问题展开研究。基于对Spanner、Percolator、CockroachDB等多个分布式数据库系统进行的深入分析,对其中一些核心技术有了较深的理解。在此基础上,他对分布式数据库的一些原理进行了梳理,特别是对“一致性”的概念进行了系统研究,厘清了分布式计算中的一致性(CAP的C)和数据库系统中的事务一致性(ACID的C)的区别与联系。他还深入研究并实践了高可用分布式数据库的架构设计、主流并发访问控制算法等。这些都是很有价值的工作。

当然,分布式数据库,特别是全球部署的大型分布式数据库,在技术上还有很多的挑战,需要科技工作者长期艰苦地努力钻研。时代给了我们机会,期待我国数据库科技工作者在这方面能取得创新性成果,引领世界的技术潮流。

杜小勇 博士
中国人民大学教授
中国计算机学会大数据专家委员会主任
2021年6月