注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)理論原理、優(yōu)化與架構(gòu)設(shè)計(jì):分布式數(shù)據(jù)庫(kù)TiDB

原理、優(yōu)化與架構(gòu)設(shè)計(jì):分布式數(shù)據(jù)庫(kù)TiDB

原理、優(yōu)化與架構(gòu)設(shè)計(jì):分布式數(shù)據(jù)庫(kù)TiDB

定 價(jià):¥119.00

作 者: 董菲 包光磊 王巖廣 黃偲韡
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787111772231 出版時(shí)間: 2025-03-01 包裝: 平裝-膠訂
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)以TiDB數(shù)據(jù)庫(kù)為基礎(chǔ)介紹分布式數(shù)據(jù)庫(kù)的運(yùn)行原理、性能優(yōu)化和應(yīng)用場(chǎng)景架構(gòu)設(shè)計(jì)。首先,剖析分布式數(shù)據(jù)庫(kù)的運(yùn)行原理與架構(gòu);然后,闡述分布式數(shù)據(jù)庫(kù)TiDB在表與索引的設(shè)計(jì)優(yōu)化、SQL優(yōu)化、系統(tǒng)級(jí)優(yōu)化方面的方法論,通過(guò)融入多個(gè)有代表性的案例,幫助讀者將方法論對(duì)應(yīng)到生產(chǎn)實(shí)踐中;最后,梳理場(chǎng)景選型和架構(gòu)設(shè)計(jì)過(guò)程中讀者應(yīng)該掌握的主要知識(shí)點(diǎn),并對(duì)一些分布式數(shù)據(jù)庫(kù)的優(yōu)勢(shì)場(chǎng)景進(jìn)行了詳細(xì)介紹。本書(shū)適合希望了解分布式數(shù)據(jù)庫(kù)原理,學(xué)習(xí)TiDB數(shù)據(jù)庫(kù)的開(kāi)發(fā)工程師、數(shù)據(jù)庫(kù)管理員和架構(gòu)師閱讀,也可以作為高等學(xué)校教師或?qū)W生學(xué)習(xí)分布式數(shù)據(jù)庫(kù)的參考教材。

作者簡(jiǎn)介

  董菲,PingCAP 首席講師,常年從事數(shù)據(jù)庫(kù)培訓(xùn)、架構(gòu)設(shè)計(jì)、開(kāi)發(fā)和維護(hù)工作 。曾供職于 Oracle、空中網(wǎng)、微軟中國(guó)和 ARUZE,是數(shù)據(jù)庫(kù)領(lǐng)域的資深專(zhuān)家。多次為人民銀行、中國(guó)銀行、工商銀行、農(nóng)業(yè)銀行、中國(guó)移動(dòng)、中國(guó)聯(lián)通、鐵路總公司、中國(guó)郵政、埃森哲和 IBM 等企業(yè)提供數(shù)據(jù)庫(kù)技術(shù)和開(kāi)發(fā)培訓(xùn)。

圖書(shū)目錄

叢書(shū)序
推薦序一
推薦序二
推薦序三
前言
第一部分 運(yùn)行原理
第1章 ?數(shù)據(jù)庫(kù)架構(gòu)概述 003
1.1 集中式數(shù)據(jù)庫(kù)的特點(diǎn) 003
1.2 集中式數(shù)據(jù)庫(kù)的典型架構(gòu) 004
1.2.1 單體數(shù)據(jù)庫(kù)架構(gòu) 004
1.2.2 配合緩存機(jī)制的數(shù)據(jù)庫(kù)架構(gòu) 005
1.2.3 主從數(shù)據(jù)庫(kù)架構(gòu) 005
1.2.4 Shared-Nothing與Shared-Everything架構(gòu) 006
1.2.5 交易型數(shù)據(jù)庫(kù) 數(shù)據(jù)倉(cāng)庫(kù) 008
1.2.6 基于分表分庫(kù)中間件的數(shù)據(jù)庫(kù)集群架構(gòu) 008
1.3 分布式數(shù)據(jù)庫(kù)的特點(diǎn) 010
第2章 ?計(jì)算引擎TiDB Server的架構(gòu)與原理 015
2.1 TiDB Server的架構(gòu) 015
2.2 TiDB Server的主要功能 016
2.3 關(guān)系型數(shù)據(jù)與鍵值的轉(zhuǎn)換 017
2.4 SQL讀寫(xiě)相關(guān)模塊 022
2.5 Online DDL相關(guān)模塊 027
2.6 GC機(jī)制與相關(guān)模塊 028
2.7 TiDB Server的緩存 030
2.7.1 TiDB Server緩存的組成結(jié)構(gòu) 030
2.7.2 TiDB Server緩存管理 030
第3章 ?數(shù)據(jù)存儲(chǔ)引擎TiKV的架構(gòu)與原理 031
3.1 TiKV的特征 031
3.2 TiKV的架構(gòu)和作用 032
3.3 RocksDB 033
3.3.1 RocksDB的作用與特點(diǎn) 033
3.3.2 RocksDB的寫(xiě)入與文件組織 034
3.3.3 RocksDB的查詢 037
3.3.4 RocksDB的列族 038
3.4 Raft與Multi Raft 039
3.4.1 Raft—日志復(fù)制 041
3.4.2 Raft—leader選舉 047
3.5 數(shù)據(jù)的寫(xiě)入 050
3.6 數(shù)據(jù)的讀取—ReadIndex Read  051
3.7 數(shù)據(jù)的讀取—Follower Read  055
3.8 MVCC 056
3.9 分布式事務(wù) 061
3.10 Coprocessor 069
第4章 ?TiDB的“大腦”——PD的架構(gòu)與原理 073
4.1 PD的架構(gòu) 073
4.2 PD的主要功能 074
4.3 路由功能 075
4.4 TSO分配 076
4.5 調(diào)度 080
4.5.1 為什么要調(diào)度 080
4.5.2 信息收集 081
4.5.3 生成調(diào)度 082
4.5.4 執(zhí)行調(diào)度 082
第5章 ?列存與MPP計(jì)算引擎TiFlash的架構(gòu)與原理 083
5.1 TiFlash的架構(gòu) 083
5.2 TiFlash的關(guān)鍵特性 084
5.3 異步復(fù)制 085
5.4 一致性讀取 086
5.5 智能選擇 091
第二部分 性能優(yōu)化
第6章 ?表與索引的設(shè)計(jì)優(yōu)化 095
6.1 TiDB數(shù)據(jù)庫(kù)中的兩種表結(jié)構(gòu) 095
6.1.1 聚簇索引表結(jié)構(gòu) 095
6.1.2 非聚簇索引表結(jié)構(gòu) 096
6.2 表與鍵值的映射方式 099
6.2.1 聚簇索引表中鍵值的映射方式 099
6.2.2 非聚簇索引表中鍵值的映射方式 100
6.3 TiDB中的索引結(jié)構(gòu) 101
6.4 兩種表結(jié)構(gòu)的寫(xiě)入對(duì)比 103
6.4.1 非聚簇索引表的寫(xiě)入 103
6.4.2 聚簇索引表的寫(xiě)入 105
6.5 兩種表結(jié)構(gòu)的讀取對(duì)比 107
6.5.1 非聚簇索引表的讀取 107
6.5.2 聚簇索引表的讀取 108
6.6 分布式數(shù)據(jù)庫(kù)的熱點(diǎn)問(wèn)題 109
6.6.1 熱點(diǎn)問(wèn)題的形成原因 110
6.6.2 不同表結(jié)構(gòu)的熱點(diǎn)問(wèn)題 111
6.6.3 熱點(diǎn)的監(jiān)控 113
6.6.4 熱點(diǎn)的解決 116
6.7 表與索引的設(shè)計(jì)優(yōu)化總結(jié) 127
第7章 ?SQL優(yōu)化 129
7.1 TiDB數(shù)據(jù)庫(kù)優(yōu)化器的工作原理 129
7.1.1 TiDB數(shù)據(jù)庫(kù)優(yōu)化器的工作流程 129
7.1.2 預(yù)處理階段之點(diǎn)查 130
7.1.3 預(yù)處理階段中的構(gòu)造初始邏輯執(zhí)行計(jì)劃 131
7.1.4 邏輯優(yōu)化 132
7.1.5 物理優(yōu)化 133
7.2 查看執(zhí)行計(jì)劃 136
7.3 數(shù)據(jù)查詢優(yōu)化之索引優(yōu)化 138
7.3.1 點(diǎn)查Point_Get & Batch_Point_Get 139
7.3.2 IndexReader(索引讀) IndexRangeScan(索引范圍掃描) 140
7.3.3 IndexLookUp(回表索引讀) IndexRangeScan(索引范圍掃描)
TableRowIDScan(根據(jù)鍵讀取表數(shù)據(jù)) 141
7.3.4 IndexFullScan(索引全掃描) 144
7.3.5 TableReader(表掃描) TableFullScan(全表掃描) 146
7.3.6 IndexMerge(索引合并) 147
7.4 數(shù)據(jù)查詢優(yōu)化之聚合優(yōu)化 150
7.4.1 HashAgg算子 150
7.4.2 StreamAgg算子 154
7.5 數(shù)據(jù)查詢優(yōu)化之表連接優(yōu)化 157
7.5.1 Hash Join算子 157
7.5.2 Merge Join算子 160
7.5.3 Index Join算子 163
7.6 統(tǒng)計(jì)信息管理 166
7.6.1 統(tǒng)計(jì)信息的工作原理 167
7.6.2 統(tǒng)計(jì)信息的組成 172
7.6.3 統(tǒng)計(jì)信息監(jiān)控 181
7.6.4 收集統(tǒng)計(jì)信息 183
7.6.5 統(tǒng)計(jì)信息的導(dǎo)入與導(dǎo)出 189
7.7 執(zhí)行計(jì)劃管理 190
7.7.1 Optimizer Hints 190
7.7.2 執(zhí)行計(jì)劃綁定 193
7.8 SQL優(yōu)化最佳實(shí)踐 197
第8章 ?性能監(jiān)控與診斷 199
8.1 性能監(jiān)控概述 199
8.2 TiDB數(shù)據(jù)庫(kù)的監(jiān)控體系 199
8.2.1 Prometheus Grafana Alertmanager  199
8.2.2 TiDB Dashboard 201
8.3 常見(jiàn)的性能診斷方法 202
8.3.1 定位慢查詢

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) www.stefanvlieger.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)