第一部份:NoSQL數(shù)據(jù)庫簡介與環(huán)境配置
講述數(shù)據(jù)庫的核心功能,以及NoSQL與關(guān)系型數(shù)據(jù)庫的側(cè)重點
簡述該部份程的目標,在部份程結(jié)束后能夠?qū)崿F(xiàn)的數(shù)據(jù)庫功能
介紹數(shù)據(jù)庫的整體架構(gòu)
介紹開發(fā)環(huán)境的搭建
第二部份:建立數(shù)據(jù)庫連接
實現(xiàn)單線程客戶端連接,能夠向服務端發(fā)送請求
實現(xiàn)多線程服務端連接,能夠從客戶端接收請求
第三部份:閥鎖,配置,日志等
定義服務端的一些底層基礎(chǔ)組件
第四部份:數(shù)據(jù)庫引擎底層搭建1
建立線程數(shù)據(jù)結(jié)構(gòu)
建立線程調(diào)度機制
第五部份:消息封裝
定義客戶端服務器的消息通訊結(jié)構(gòu)
第六部份:數(shù)據(jù)的持久化存放
Mmap,內(nèi)存與磁盤的映射
數(shù)據(jù)塊的分配與回收
第七部份:數(shù)據(jù)的存儲結(jié)構(gòu)
BSON與數(shù)據(jù)記錄的結(jié)構(gòu)設計
數(shù)據(jù)文件存儲結(jié)構(gòu)設計
第八部份:數(shù)據(jù)的插入,讀取與刪除
數(shù)據(jù)的插入,查詢與刪除
客戶端增加相應的功能
第九部份:散列索引
數(shù)據(jù)鍵的散列桶與內(nèi)存結(jié)構(gòu)
數(shù)據(jù)庫啟動自動建立散列索引
第十部份:數(shù)據(jù)庫理論
介紹數(shù)據(jù)庫的一些基本原理,包括事務,SQL編譯與執(zhí)行等
第十一部份:SQL解析和優(yōu)化
SQL編譯進階,優(yōu)化器概念與實現(xiàn)原理。
第十二部份:Java驅(qū)動
連接多點數(shù)據(jù)庫并查詢
建立數(shù)據(jù)的散列機制,能夠在正確的分區(qū)上查找數(shù)據(jù)
第十三部份:監(jiān)控、性能調(diào)優(yōu)和測試
介紹數(shù)據(jù)庫監(jiān)控和調(diào)優(yōu)理論,并實現(xiàn)數(shù)據(jù)庫的基本監(jiān)控快照功能
介紹軟件測試流程與自動化測試
第十四部份:Java應用
建立Java應用程序,使用驅(qū)動與數(shù)據(jù)庫通訊
第十五部份:總結(jié)
總結(jié)前14節(jié)部份的步驟
擴展討論
多數(shù)據(jù)層次(表空間,表)
日志
高可用性
持久性
鎖
事務
多字段查詢與更新
B樹索引
SQL解析
基于規(guī)則的SQL優(yōu)化器
基于開銷的SQL優(yōu)化器 |