高可擴展的分布式確定性數(shù)據(jù)庫設(shè)計與實現(xiàn)
發(fā)布時間:2021-01-21 12:43
確定性數(shù)據(jù)庫預(yù)先確定事務(wù)執(zhí)行順序,并在運行時根據(jù)該順序?qū)κ聞?wù)進行確定性執(zhí)行。該機制可以有效規(guī)避傳統(tǒng)分布式提交協(xié)議所帶來的開銷,進而提高系統(tǒng)性能;同時,可以避免由競爭引起的事務(wù)回滾,提升在高競爭場景下系統(tǒng)性能的分布式可擴展性。鑒于確定性數(shù)據(jù)庫與傳統(tǒng)數(shù)據(jù)庫相比在性能上的優(yōu)勢,該類系統(tǒng)已經(jīng)成為學術(shù)界研究的熱點并且開始被產(chǎn)業(yè)界嘗試使用。然而,本文發(fā)現(xiàn)確定性數(shù)據(jù)庫系統(tǒng)在低競爭場景下系統(tǒng)性能的可擴展性較差。具體來講,在運行時為了保證事務(wù)的確定性執(zhí)行,服務(wù)器需將接收到的事務(wù)按照預(yù)先確定的順序進行調(diào)度,然后依次執(zhí)行,該調(diào)度操作限制了系統(tǒng)的可擴展性。在實現(xiàn)中,確定性數(shù)據(jù)庫引入了確定性鎖的概念,通過與兩階段鎖相結(jié)合,達到確定性執(zhí)行的目的。當服務(wù)器接收到事務(wù)后,會對事務(wù)讀寫集合進行分析,按照預(yù)先確定好的順序?qū)现械臄?shù)據(jù)上鎖(確定性鎖)。確定性數(shù)據(jù)庫通過保證鎖的有序性,進而滿足了事務(wù)執(zhí)行的確定性。本文通過評測與分析發(fā)現(xiàn),在低競爭場景下,現(xiàn)有確定性數(shù)據(jù)庫基于確定性鎖的調(diào)度機制成為性能瓶頸,使得其性能最多只能擴展到4個工作線程。針對上述問題,本文提出了確定與樂觀并發(fā)控制(DOCC)。DOCC在保證事務(wù)確定性執(zhí)行...
【文章來源】:上海交通大學上海市 211工程院校 985工程院校 教育部直屬院校
【文章頁數(shù)】:97 頁
【學位級別】:碩士
【文章目錄】:
摘要
abstract
第一章 緒論
1.1 研究背景
1.2 研究現(xiàn)狀
1.2.1 非確定性數(shù)據(jù)庫
1.2.2 確定性數(shù)據(jù)庫
1.3 主要研究內(nèi)容
1.4 論文組織結(jié)構(gòu)
第二章 相關(guān)技術(shù)背景
2.1 非確定性數(shù)據(jù)庫
2.1.1 網(wǎng)絡(luò)消息流
2.2 確定性數(shù)據(jù)庫
2.2.1 確定性的優(yōu)勢
2.2.2 網(wǎng)絡(luò)消息流
2.2.3 事務(wù)執(zhí)行的確定性保證
2.2.4 局限性
2.3 分布式確定性數(shù)據(jù)庫
2.3.1 定序?qū)?br> 2.3.2 調(diào)度層
2.3.3 存儲層
2.4 事務(wù)處理協(xié)議與模型
2.4.1 樂觀并發(fā)控制
2.4.2 多版本并發(fā)控制
2.4.3 單次事務(wù)模型
2.5 本章小結(jié)
第三章 確定與樂觀并發(fā)控制
3.1 確定性數(shù)據(jù)庫現(xiàn)有的問題
3.1.1 限制系統(tǒng)可擴展性
3.1.2 制約事務(wù)并發(fā)性
3.1.3 事務(wù)類型受限
3.2 基于確定與樂觀并發(fā)控制的基本思想
3.2.1 事務(wù)執(zhí)行策略
3.2.2 無需預(yù)知讀寫集合
3.3 確定與樂觀并發(fā)控制的具體算法
3.3.1 數(shù)據(jù)結(jié)構(gòu)與存儲接口
3.3.2 算法描述
3.4 事務(wù)回滾策略
3.5 正確性證明
3.6 算法討論
3.7 本章小結(jié)
第四章 針對只讀事務(wù)與事務(wù)回滾的優(yōu)化
4.1 針對只讀事務(wù)的優(yōu)化
4.1.1 多版本數(shù)據(jù)
4.1.2 數(shù)據(jù)結(jié)構(gòu)與存儲接口
4.1.3 算法描述
4.1.4 正確性證明
4.2 針對事務(wù)回滾的優(yōu)化
4.2.1 數(shù)據(jù)預(yù)取
4.2.2 算法描述
4.3 垃圾回收機制
4.3.1 回收過時數(shù)據(jù)版本
4.3.2 回收被邏輯刪除的數(shù)據(jù)
4.4 本章小結(jié)
第五章 系統(tǒng)設(shè)計與實現(xiàn)
5.1 系統(tǒng)設(shè)計
5.1.1 系統(tǒng)架構(gòu)
5.1.2 事務(wù)標識符
5.1.3 服務(wù)器的本地執(zhí)行順序
5.1.4 崩潰恢復(fù)機制
5.2 系統(tǒng)實現(xiàn)
5.2.1 事務(wù)過濾
5.2.2 事務(wù)執(zhí)行
5.2.3 垃圾回收機制
5.3 本章小結(jié)
第六章 實驗和評測
6.1 測試環(huán)境和方法
6.1.1 測試環(huán)境
6.1.2 測試方法
6.2 單機性能的提升
6.3 可擴展性的提升
6.4 優(yōu)化要素分析
6.5 本章小結(jié)
第七章 總結(jié)與展望
7.1 全文總結(jié)
7.2 工作展望
參考文獻
致謝
攻讀學位期間發(fā)表的學術(shù)論文
攻讀學位期間申請的專利
本文編號:2991185
【文章來源】:上海交通大學上海市 211工程院校 985工程院校 教育部直屬院校
【文章頁數(shù)】:97 頁
【學位級別】:碩士
【文章目錄】:
摘要
abstract
第一章 緒論
1.1 研究背景
1.2 研究現(xiàn)狀
1.2.1 非確定性數(shù)據(jù)庫
1.2.2 確定性數(shù)據(jù)庫
1.3 主要研究內(nèi)容
1.4 論文組織結(jié)構(gòu)
第二章 相關(guān)技術(shù)背景
2.1 非確定性數(shù)據(jù)庫
2.1.1 網(wǎng)絡(luò)消息流
2.2 確定性數(shù)據(jù)庫
2.2.1 確定性的優(yōu)勢
2.2.2 網(wǎng)絡(luò)消息流
2.2.3 事務(wù)執(zhí)行的確定性保證
2.2.4 局限性
2.3 分布式確定性數(shù)據(jù)庫
2.3.1 定序?qū)?br> 2.3.2 調(diào)度層
2.3.3 存儲層
2.4 事務(wù)處理協(xié)議與模型
2.4.1 樂觀并發(fā)控制
2.4.2 多版本并發(fā)控制
2.4.3 單次事務(wù)模型
2.5 本章小結(jié)
第三章 確定與樂觀并發(fā)控制
3.1 確定性數(shù)據(jù)庫現(xiàn)有的問題
3.1.1 限制系統(tǒng)可擴展性
3.1.2 制約事務(wù)并發(fā)性
3.1.3 事務(wù)類型受限
3.2 基于確定與樂觀并發(fā)控制的基本思想
3.2.1 事務(wù)執(zhí)行策略
3.2.2 無需預(yù)知讀寫集合
3.3 確定與樂觀并發(fā)控制的具體算法
3.3.1 數(shù)據(jù)結(jié)構(gòu)與存儲接口
3.3.2 算法描述
3.4 事務(wù)回滾策略
3.5 正確性證明
3.6 算法討論
3.7 本章小結(jié)
第四章 針對只讀事務(wù)與事務(wù)回滾的優(yōu)化
4.1 針對只讀事務(wù)的優(yōu)化
4.1.1 多版本數(shù)據(jù)
4.1.2 數(shù)據(jù)結(jié)構(gòu)與存儲接口
4.1.3 算法描述
4.1.4 正確性證明
4.2 針對事務(wù)回滾的優(yōu)化
4.2.1 數(shù)據(jù)預(yù)取
4.2.2 算法描述
4.3 垃圾回收機制
4.3.1 回收過時數(shù)據(jù)版本
4.3.2 回收被邏輯刪除的數(shù)據(jù)
4.4 本章小結(jié)
第五章 系統(tǒng)設(shè)計與實現(xiàn)
5.1 系統(tǒng)設(shè)計
5.1.1 系統(tǒng)架構(gòu)
5.1.2 事務(wù)標識符
5.1.3 服務(wù)器的本地執(zhí)行順序
5.1.4 崩潰恢復(fù)機制
5.2 系統(tǒng)實現(xiàn)
5.2.1 事務(wù)過濾
5.2.2 事務(wù)執(zhí)行
5.2.3 垃圾回收機制
5.3 本章小結(jié)
第六章 實驗和評測
6.1 測試環(huán)境和方法
6.1.1 測試環(huán)境
6.1.2 測試方法
6.2 單機性能的提升
6.3 可擴展性的提升
6.4 優(yōu)化要素分析
6.5 本章小結(jié)
第七章 總結(jié)與展望
7.1 全文總結(jié)
7.2 工作展望
參考文獻
致謝
攻讀學位期間發(fā)表的學術(shù)論文
攻讀學位期間申請的專利
本文編號:2991185
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/2991185.html
最近更新
教材專著