openGauss資料庫源碼解析

openGauss資料庫源碼解析

《openGauss資料庫源碼解析》是清華大學出版社2021年出版的書籍。

基本介紹

  • 中文名:openGauss資料庫源碼解析
  • 作者:李國良、張樹傑
  • 出版時間:2021年9月1日
  • 出版社:清華大學出版社
  • ISBN:9787302586173
  • 定價:145
內容簡介,圖書目錄,

內容簡介

本書是針對openGauss開源資料庫的源碼進行分模組解析的書籍。全書共分為10章。第1章對openGauss進行簡介。第2章介紹了核心開發所需的入門知識,包括openGauss的安裝、基本使用、開發、編譯、參與社區開源項目等。第3~10章針對openGauss不同的功能模組分別進行源碼介紹。第3章針對系統表、多執行緒架構、記憶體管理等作用於整個資料庫系統的公共組件從定義、原理、流程等方面進行源碼介紹; 第4章介紹openGauss滿足OLTP、OLAP不同業務場景的存儲引擎實現及對應的源碼; 第5章介紹保證資料庫ACID屬性的事務機制的原理和源碼; 第6章介紹SQL 引擎的SQL解析和查詢最佳化代碼主流程; 第7章介紹openGauss執行器的整體架構和各類執行運算元的源碼; 第8章介紹openGauss在人工智慧與資料庫結合領域探索的源碼; 第9章從系統整體角度出發,針對基礎和高階的安全能力進行全面介紹和源碼解讀; 第10章介紹openGauss的備份恢復機制的源碼,包括全量備份、增量備份所涉及的工具、互動流程和主要檔案等。

圖書目錄

CONTENTS
目錄
第1章openGauss簡介
1.1openGauss概述
1.2套用場景
1.3系統架構
1.4代碼結構
1.4.1通信管理
1.4.2SQL引擎
1.4.3存儲引擎
1.5價值特性
1.5.1高性能
1.5.2高擴展
1.5.3高可用
1.5.4可維護性
1.5.5資料庫安全
1.5.6AI能力
1.6本章小結
第2章openGauss開發快速入門
2.1安裝部署
2.1.1了解安裝流程
2.1.2準備軟硬體安裝環境
2.1.3修改作業系統配置
2.1.4設定root用戶遠程登錄
2.1.5獲取安裝包
2.1.6創建XML配置檔案
2.1.7初始化安裝環境
2.1.8執行安裝
2.1.9安裝驗證
2.2基本使用
2.2.1連線資料庫
2.2.2使用資料庫
2.3開發和編譯
2.3.1搭建開發環境
2.3.2搭建編譯環境
2.3.3版本編譯
2.4參與openGauss社區開源項目
2.4.1開源社區概述
2.4.2社區環境準備
2.4.3提交Issue
2.4.4貢獻代碼和文檔
2.4.5Git使用
2.5本章小結
第3章公共組件源碼解析
3.1系統表
3.1.1系統表的定義
3.1.2系統表的訪問
3.2資料庫初始化
3.3多執行緒架構
3.3.1openGauss主要執行緒
3.3.2執行緒間通信
3.3.3執行緒初始化流程
3.4執行緒池技術
3.4.1執行緒池原理
3.4.2執行緒池實現
3.5記憶體管理
3.6多維監控
3.7模擬信號機制
3.8本章小結
第4章存儲引擎源碼解析
4.1存儲引擎整體架構與代碼
4.2磁碟引擎
4.2.1磁碟引擎整體框架與代碼
4.2.2行存儲統一訪存接口
4.2.3astore
4.2.4ustore
4.2.5行存儲索引機制
4.2.6行存儲快取機制
4.2.7cstore
4.2.8日誌系統
4.2.9持久化及故障恢復機制
4.2.10主備機制
4.3記憶體表
4.3.1總體架構與代碼
4.3.2FDW
4.3.3記憶體表的存儲
4.3.4索引
4.3.5事務
4.3.6並發控制
4.3.7重做日誌
4.3.8檢查點
4.3.9恢復
4.4本章小結
第5章事務機制源碼解析
5.1事務整體架構與代碼
5.2事務並發控制
5.2.1事務狀態機
5.2.2事務ID分配及CLOG/CSNLOG
5.2.3MVCC可見性判斷機制
5.2.4進程內多執行緒管理機制
5.3鎖機制
5.3.1自旋鎖
5.3.2輕量級鎖
5.3.3常規鎖
5.3.4死鎖檢測機制
5.3.5無鎖原子操作
5.3.6基於鯤鵬伺服器的性能最佳化
5.4本章小結
第6章SQL引擎源碼解析
6.1概述
6.2SQL解析
6.2.1詞法分析
6.2.2語法分析
6.2.3語義分析
6.2.4解析流程分析
6.3查詢最佳化
6.3.1查詢重寫
6.3.2統計信息與代價估算
6.3.3物理路徑
6.3.4動態規劃
6.3.5遺傳算法
6.4本章小結
第7章執行器解析
7.1執行器整體架構與代碼
7.1.1執行器整體架構
7.1.2火山模型
7.1.3代碼
7.2執行流程
7.2.1Portal策略選擇模組
7.2.2ProcessUtility模組
7.2.3executor模組
7.3執行運算元
7.3.1控制運算元
7.3.2掃描運算元
7.3.3物化運算元
7.3.4連線運算元
7.4表達式計算
7.4.1初始化階段
7.4.2執行階段
7.5編譯執行
7.5.1VecExprCode類
7.5.2VecHashAggCodeGen類
7.5.3VecHashJoinCodeGen類
7.5.4VecSortCodeGen類
7.6向量化引擎
7.6.1控制運算元
7.6.2掃描運算元
7.6.3物化運算元
7.6.4連線運算元
7.7本章小結
第8章 AI技術
8.1概述
8.2自調優
8.2.1參數自調優的使用場景
8.2.2現有的參數調優技術
8.2.3XTuner的調優策略
8.2.4openGauss關鍵源碼解析
8.2.5使用示例
8.2.6對XTuner的二次開發
8.2.7XTuner的演進路線
8.3慢SQL發現
8.3.1慢SQL發現的功能
8.3.2現有技術
8.3.3慢SQL發現採取的策略
8.3.4關鍵源碼解析
8.3.5使用示例
8.4智慧型索引推薦
8.4.1使用場景
8.4.2現有技術
8.4.3實現原理
8.4.4關鍵源碼解析
8.4.5使用示例
8.5指標採集、預測與異常檢測
8.5.1使用場景
8.5.2實現原理
8.5.3關鍵源碼解析
8.5.4使用示例
8.5.5演進路線
8.6AI查詢時間預測
8.6.1使用場景
8.6.2現有技術
8.6.3實現原理
8.6.4關鍵源碼解析
8.6.5使用示例
8.6.6演進路線
8.7DeepSQL
8.7.1使用場景
8.7.2現有技術
8.7.3關鍵源碼解析
8.7.4基於MADlib框架的擴展
8.7.5MADlib在openGauss上的使用示例
8.7.6演進路線
8.8本章小結
第9章安全管理源碼解析
9.1安全管理整體架構與代碼
9.2安全認證
9.2.1身份認證
9.2.2口令存儲
9.2.3認證機制
9.2.4Kerberos安全認證
9.3角色創建與角色管理
9.3.1角色創建
9.3.2角色管理
9.4許可權管理與許可權檢查
9.4.1許可權管理
9.4.2許可權檢查
9.5審計與追蹤
9.5.1審計日誌設計
9.5.2審計執行
9.6數據安全技術
9.6.1數據加解密接口
9.6.2數據動態脫敏
9.6.3密態等值查詢
9.7本章小結
第10章備份恢復機制
10.1openGauss全量備份技術
10.1.1gs_basebackup備份工具
10.1.2gs_basebackup備份互動流程
10.2openGauss增量備份技術
10.2.1gs_probackup子命令
10.2.2gs_probackup主要檔案
10.2.3gs_probackup備份恢複流程
10.2.4redo日誌增量備份恢複流程
10.3本章小結

相關詞條

熱門詞條

聯絡我們