注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡數(shù)據(jù)庫MySQL內核:InnoDB存儲引擎卷1

MySQL內核:InnoDB存儲引擎卷1

MySQL內核:InnoDB存儲引擎卷1

定 價:¥69.00

作 者: 姜承堯,蔣鴻翔,饒瓏輝 等著
出版社: 電子工業(yè)出版社
叢編項:
標 簽: SQL 計算機/網(wǎng)絡 數(shù)據(jù)庫

購買這本書可以去


ISBN: 9787121229084 出版時間: 2014-05-01 包裝: 平裝
開本: 16開 頁數(shù): 360 字數(shù):  

內容簡介

  《MySQL內核:InnoDB存儲引擎 卷1》由資深MySQL專家,機工暢銷圖書作者親自執(zhí)筆,在以往出版的兩本InnoDB介紹性圖書的基礎之上,更深入地介紹InnoDB存儲引擎的內核,例如latch、B+樹索引、事務、鎖等,從源代碼的角度深度解析了InnoDB的體系結構、實現(xiàn)原理、工作機制,并給出了大量最佳實踐,希望通過《MySQL內核:InnoDB存儲引擎 卷1》幫助用戶真正了解一個數(shù)據(jù)庫存儲引擎的開發(fā)?!禡ySQL內核:InnoDB存儲引擎 卷1》可以成為帶領讀者進入數(shù)據(jù)庫存儲引擎的內核開發(fā),幫助那些從事MySQL數(shù)據(jù)庫的相關行業(yè)從業(yè)人員。同時,《MySQL內核:InnoDB存儲引擎 卷1》也適合對于研究生階段有志于數(shù)據(jù)庫內核開發(fā)的同學。

作者簡介

  姜承堯(DavidJiang),MySQL領域的Oracle ACE,資深MySQL數(shù)據(jù)庫專家,擅長于數(shù)據(jù)庫的故障診斷、性能調優(yōu)、容災處理、高可用和高擴展研究,同時一直致力于MySQL數(shù)據(jù)庫底層實現(xiàn)原理的研究和探索。此外,對高性能數(shù)據(jù)庫和數(shù)據(jù)倉庫也有深刻而獨到的理解。曾為MySQL編寫了許多開源工具和性能擴展補丁,如廣受好評的InnoDB引擎二級緩存項目?,F(xiàn)任網(wǎng)易杭州研究院技術經理一職,負責MySQL數(shù)據(jù)庫的內核開發(fā),參與設計與開發(fā)MySQL數(shù)據(jù)庫在網(wǎng)易云環(huán)境中的應用。曾擔任久游網(wǎng)數(shù)據(jù)庫工程部經理,曾領導并參與了多個大型核心數(shù)據(jù)庫的設計、實施、管理和維護,實戰(zhàn)經驗非常豐富。活躍于開源數(shù)據(jù)庫以及開源軟件領域,是著名開源社區(qū)ChinaUnixMySQL版塊的版主,熱衷于與網(wǎng)友分享自己的心得和體會,深受社區(qū)歡迎。

圖書目錄

第1章 概覽
1.1 InnoDB 存儲引擎歷史
1.2 源碼版本
1.3 源碼風格
1.3.1 源碼結構
1.3.2 代碼風格
1.4 代碼編譯
1.5 閱讀源碼次序
1.6 思考題
1.7 繼續(xù)閱讀
第2章 基本數(shù)據(jù)結構與算法
2.1 相關文件
2.2 內存管理系統(tǒng)
2.2.1 內存管理
2.2.2 通用內存池
2.3 哈希表
2.3.1 哈希算法
2.3.2 數(shù)據(jù)結構
2.4 雙鏈表
2.4.1 內存雙鏈表
2.4.2 磁盤雙鏈表
2.5 其他數(shù)據(jù)結構和算法
2.5.1 動態(tài)數(shù)組
2.5.2 排序
2.6 小結
2.7 思考題
2.8 繼續(xù)閱讀
第3章 同步機制
3.1 相關文件
3.2 基礎知識
3.2.1 memory model
3.2.2 mutual exclution
3.2.3 Atomic Read-Modify-Write Operation
3.2.4 spin lock
3.2.5 死鎖
3.3 InnoDB 同步機制
3.3.1 mutex
3.3.2 rw-lock
3.3.3 wait array
3.3.4 死鎖檢測
3.4 小結
3.5 思考題
3.6 繼續(xù)閱讀
第4章 重做日志
4.1 相關文件
4.2 相關概念
4.2.1 簡介
4.2.2 物理邏輯日志
4.2.3 LSN
4.2.4 檢查點
4.2.5 歸檔日志
4.2.6 恢復
4.3 物理存儲結構
4.3.1 重做日志物理架構
4.3.2 重做日志塊
4.3.3 重做日志組與文件
4.4 相關數(shù)據(jù)結構
4.4.1 log_group_struct
4.4.2 log_struct
4.5 組提交
4.6 恢復
4.6.1 數(shù)據(jù)結構
4.6.2 重做日志恢復
4.7 總結
4.8 思考題
4.9 繼續(xù)閱讀
第5章 mini-transaction
5.1 相關文件
5.2 mini-transaction 介紹
5.2.1 基本概念
5.2.2 The FIX Rules
5.2.3 Write-Ahead Log(WAL)
5.2.4 Force-log-at-commit
5.3 具體實現(xiàn)
5.3.1 數(shù)據(jù)結構
5.3.2 物理邏輯日志的實現(xiàn)
5.3.3 mini-transaction 的使用
5.4 示例
5.5 小結
5.6 思考題
5.7 繼續(xù)閱讀
第6章 存儲管理
6.1 相關文件
6.2 物理存儲
6.2.1 頁
6.2.2 區(qū)
6.2.3 段
6.2.4 表空間
6.3 數(shù)據(jù)結構
6.3.1 概述
6.3.2 fil_system_struct
6.3.3 fil_space_struct
6.3.4 fil_node_struct
6.4 異步 I/O
6.4.1 異步 I/O 數(shù)據(jù)結構
6.4.2 異步 I/O 線程
6.5 總結
6.6 思考題
6.7 繼續(xù)閱讀
第 7 章 記錄
7.1 相關文件
7.2 概述
7.3 物理記錄
7.3.1 物理記錄格式
7.3.2 大記錄格式
7.3.3 偽記錄
7.4 邏輯記錄
7.5 記錄之間的比較
7.6 行記錄版本
7.7 小結
7.8 思考題
7.9 繼續(xù)閱讀
第8章 索引頁
8.1 相關文件
8.2 頁
8.3 存儲結構
8.3.1 Page Header
8.3.2 Page Directory
8.3.3 示例
8.4 Page Cursor
8.4.1 定位記錄
8.4.2 插入記錄
8.4.3 刪除記錄
8.4.4 并發(fā)控制
8.5 小結
8.6 思考題
8.7 繼續(xù)閱讀
第9章 鎖
9.1 相關文件
9.2 鎖與事務
9.2.1 隔離性
9.2.2 事務的隔離級別
9.2.3 幻讀
9.3 InnoDB 存儲引擎中鎖的類型與算法
9.4 鎖的內部實現(xiàn)
9.4.1 數(shù)據(jù)結構
9.4.2 鎖的并發(fā)控制
9.4.3 鎖的類型與模式
9.4.4 鎖的兼容性
9.5 顯式鎖和隱式鎖
9.5.1 顯式鎖與隱式鎖的區(qū)別
9.5.2 聚集索引記錄的隱式鎖
9.5.3 輔助索引記錄的隱式鎖
9.6 加鎖操作
9.6.1 加鎖流程
9.6.2 加鎖過程
9.7 行鎖的維護
9.7.1 插入
9.7.2 更新
9.7.3 PURGE
9.7.4 一致性的鎖定讀
9.7.5 頁的分裂
9.7.6 頁的合并
9.8 自增鎖
9.9 死鎖
9.9.1 死鎖的概念
9.9.2 死鎖概率
9.9.3 死鎖的示例
9.10 小結
9.11 思考題
9.12 繼續(xù)閱讀
第10章 B+樹索引
10.1 B+ 樹
10.1.1 概述
10.1.2 插入
10.1.3 刪除
10.2 B+ 樹索引
10.2.1 索引的特點
10.2.2 聚集索引
10.2.3 輔助索引
10.2.4 填充因子
10.3 InnoDB 存儲引擎 B+ 樹索引實現(xiàn)
10.3.2 相關 latch
10.3.3 整理
10.3.4 分裂
10.3.5 合并
10.4 查找
10.4.1 mode
10.4.2 latch_mode
10.4.3 cursor
10.5 DML 操作
10.5.1 插入
10.5.2 非主鍵更新
10.5.3 主鍵更新
10.5.4 刪除
10.6 持久游標
10.7 自適應哈希索引
10.7.1 實現(xiàn)原理
10.7.2 創(chuàng)建哈希索引
10.7.3 哈希索引的維護
10.7.4 自適應哈希索引的優(yōu)缺點
10.8 小結
10.9 思考題
10.10 繼續(xù)閱讀
第11章 Insert Buffer
11.1 相關文件
11.2 基本概念
11.3 架構實現(xiàn)
11.3.1 存儲結構
11.3.2 邏輯控制
11.3.3 示例
11.4 相關數(shù)據(jù)結構
11.5 死鎖
11.5.1 latch 順序
11.5.2 并發(fā)控制
11.5.3 異步 I/O 線程
11.6 維護
11.6.1 記錄合并
11.6.2 空間收縮
11.7 小結
11.8 思考題
11.9 繼續(xù)閱讀
第12章 緩沖池
12.1 相關文件
12.2 概述
12.2.1 緩沖池
12.2.2 LRU、Free 和 Flush 鏈表
12.2.3 基本數(shù)據(jù)結構
12.3 緩沖池的管理
12.3.1 LRU 算法
12.3.2 LRU 鏈表維護
12.3.3 頁的分配
12.4 頁的讀取
12.4.1 物理讀取
12.4.2 隨機預讀
12.4.3 線性預讀
12.4.4 邏輯讀取
12.5 頁的刷新
12.5.1 檢查點
12.5.2 部分寫的問題
12.5.3 刷新的實現(xiàn)
12.6 小結
12.7 思考題
12.8 繼續(xù)閱讀
第13章 事務處理
13.1 相關文件
13.2 事務
13.2.1 概述
13.2.2 分類
13.2.1 隔離級別
13.3 事務系統(tǒng)結構
13.3.1 事務系統(tǒng)段
13.3.2 數(shù)據(jù)結構
13.4 DOUBLEWRITE 段
13.5 UNDO 日志存儲
13.5.1 簡介
13.5.2 實現(xiàn)結構
13.5.3 回滾段
13.5.4 UNDO 段
13.6 UNDO 記錄
13.6.1 存儲結構
13.6.2 INSERT UNDO LOG RECORD
13.6.3 UPDATE UNDO LOG RECORD
13.7 PURGE
13.7.1 清理操作
13.7.2 實現(xiàn)原理
13.8 ROLLBACK
13.8.1 回滾指針
13.8.2 回滾操作
13.9 COMMIT
13.10 kernel_mutex 與并發(fā)控制
13.11 小結
13.12 思考題
13.13 繼續(xù)閱讀
第14章 數(shù)據(jù)字典
14.1 相關文件
14.2 數(shù)據(jù)字典概述
14.3 主要數(shù)據(jù)對象
14.3.1 數(shù)據(jù)字典系統(tǒng)
14.3.2 表定義
14.3.3 索引定義
14.3.4 外鍵約束定義
14.3.5 其他數(shù)據(jù)對象定義
14.4 InnoDB 系統(tǒng)表對象
14.4.1 SYS_TABLES
14.4.2 SYS_COLUMNS
14.4.3 SYS_INDEXES
14.4.4 SYS_FIELDS
14.4.5 其他表對象
14.5 數(shù)據(jù)字典創(chuàng)建
14.5.1 數(shù)據(jù)字典段
14.5.2 數(shù)據(jù)字典物理結構
14.5.3 數(shù)據(jù)字典初始化
14.5.4 數(shù)據(jù)字典緩存組織
14.6 數(shù)據(jù)字典對象加載
14.6.1 用戶表加載
14.6.2 用戶索引和外鍵約束加載
14.7 小結
14.8 思考題
14.9 繼續(xù)閱讀
第15章 服務管理
15.1 相關文件
15.2 初始化 InnoDB 存儲引擎
15.2.1 相關重要參數(shù)
15.2.2 服務管理相關數(shù)據(jù)結構
15.2.3 文件創(chuàng)建和加載
15.2.4 啟動后臺線程
15.3 關閉 InnoDB 存儲引擎
15.3.1 數(shù)據(jù)持久化
15.3.2 資源釋放
15.4 master 線程
15.4.1 主要功能
15.4.2 數(shù)據(jù)刷盤策略
15.5 鎖超時監(jiān)控線程
15.6 思考題
15.7 繼續(xù)閱讀

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號