- 分布式數據庫原理、架構與實踐
- 李海翔
- 1777字
- 2021-10-20 15:26:03
前言
為什么寫這本書
現代的分布式技術在互聯網應用的驅動下,在CAP理論的引領下,已經有了很多新的內涵和外延。而分布式技術體系下,分布式數據庫技術的發展方興未艾,其中有很多“新”問題正在被研究,例如:CAP理論中代表分布式一致性的C和事務ACID中的C之間是什么關系?是否存在可結合之處?當然,也有很多“新”技術正在發展中。但是,在分布式數據庫領域缺少體系化的、深入剖析數據庫原理的書籍,使得這個領域的技術傳播偏弱,尤其是分布式數據庫領域的一致性等相關技術,存在概念混雜、理解不一的問題。筆者基于對該領域多年的科研和實踐,歷經數年,把對分布式數據庫領域一些重要技術的理解和在實踐中所得的經驗整理成冊,期待以圖書的形式幫到更多讀者。本書若是能促進分布式數據庫的進一步發展,筆者將不勝榮幸。
本書主要內容
本書主要討論如下3個話題。
- 分布式數據庫中存在的問題和原理。科學研究,始于問題。本書首先對分布式數據庫技術中一些典型問題進行分析,以明確本書所要研究和解決問題的技術方向。之后討論CAP原理與ACID技術結合后的一些問題(重點是一致性問題)及技術,以及業界在這方面的科研成果和工程實現思路。
- 分布式數據庫架構。從分布式數據庫架構的角度,討論影響架構的內在、外在技術因素,內在因素如強一致性、高可靠性、高可用性,外在因素如云計算、Serverless需求等。
- 分布式數據庫案例實踐。從工程實踐的角度,以案例的形式討論諸多分布式系統的實現技術,涉及的數據庫包括Spanner、CockroachDB、HBase、Greenplum等。
本書主要特色
本書以前沿技術和工程實踐為抓手,通過問題確認、原理闡述、架構剖析、實例分析,有深度地進行了以下三項工作。
- 深入經典技術:對經典技術進行深度探索,如剖析CAP原理的發展過程,深度解讀事務處理技術(如MVCC、OCC、DTA等技術)的發展和相關研究。
- 前沿探索:按照本書的內容規劃,對前沿技術方向與內容從廣度層面進行剖析和介紹,以開闊讀者的思路和眼界。前沿內容散布于各個章節,與各章節主題互相映襯。
- 原理、案例相結合:立足原理,對分布式數據庫的架構進行深度剖析,并對業界多個產品從問題、原理、前沿技術研究成果、架構相關因素等角度進行深度分析。用多個案例多樣化地印證其他部分介紹的原理和前沿技術。
本書面向的主要讀者
- 分布式數據庫的設計者和開發者;
- 分布式數據庫前沿技術的研究者;
- 其他對分布式數據庫感興趣的讀者。
如何閱讀本書
本書沒有涉及編程實現的細節,而是從整體上對分布式數據庫一致性等重要問題逐步展開介紹。全書分為三篇——原理、架構和典型案例。其中原理篇對經典的分布式數據庫理論和技術進行剖析。
基于原理篇,架構篇從兩個角度對分布式數據庫架構進行剖析:一是影響數據庫內核設計的理念(第5章);二是影響數據庫架構設計的外在環境(第6章)。這兩個方面的內容可幫助讀者深入理解數據庫內核的框架結構及設計思想。
典型案例篇則結合原理,對部分經典的分布式數據庫系統展開討論,以幫助讀者把理論和實踐相結合。閱讀案例時,如能時時重溫原理篇的內容,則學習效果更佳。
本書不僅給出了大量的參考文獻及其概述,還將這些參考文獻和本書內容相結合,兩者相互印證,進而使本書內容更充實。限于篇幅,書中不可能對所有內容都充分展開,所以如果您期望更加深入地掌握和理解相關內容,可進一步閱讀相應參考文獻。
資源及勘誤
由于筆者的水平有限,書中難免存在錯誤,若您在閱讀時發現任何問題,都可發送電子郵件到database_XX@163.com,筆者不勝感謝。有了您的幫助和支持,本書定能更加完善。由于時間有限,也許筆者不能一一回復所有的電子郵件,但是一定會定期整理并匯總信息到華章網站(http://www.hzbook.com)本書的頁面下。
致謝
在多年的研究和實踐工作中,承蒙中國人民大學杜小勇教授的悉心指導,筆者獲益良多,本書能面世也與杜教授的指導息息相關,在此深表感謝。另外,要特別感謝杜教授在百忙之中抽出時間,專門為本書作序。
本書承蒙武漢大學彭智勇教授、易鯨捷信息技術有限公司CEO武新博士、CSDN創始人兼董事長蔣濤先生作序推薦,在此致以誠摯的感謝。
感謝筆者的父母、妻女。筆者傾注于寫作本書的時光,本應是陪伴親人們的歲月,筆者因此愧疚不已。
感謝機械工業出版社華章分社編輯楊福川先生和孫海亮先生為本書付出的努力與耗費的心血,筆者出版了數本書,都得到他們無私、有價值的幫助。
感謝每一位讀者,讀者的口碑促使筆者不斷努力,每一位讀者都是筆者繼續進步的不竭動力。期待本書對讀者有所幫助。
李海翔