登入帳戶  | 訂單查詢  | 購物車/收銀台(0) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入   新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2024年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書

『簡體書』分布式数据库TiDB:原理、优化与架构设计

書城自編碼: 4084750
分類:簡體書→大陸圖書→計算機/網絡數據庫
作者: 董菲 包光磊 王岩广 黄偲韡
國際書號(ISBN): 9787111772231
出版社: 机械工业出版社
出版日期: 2025-03-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:HK$ 130.9

我要買

share:

** 我創建的書架 **
未登入.


新書推薦:
索恩丛书·苏莱曼大帝的崛起:奥斯曼宫廷与16世纪的地中海世界
《 索恩丛书·苏莱曼大帝的崛起:奥斯曼宫廷与16世纪的地中海世界 》

售價:HK$ 86.9
攀龙附凤:北宋潞州上党李氏外戚将门研究(增订本)宋代将门百年兴衰史
《 攀龙附凤:北宋潞州上党李氏外戚将门研究(增订本)宋代将门百年兴衰史 》

售價:HK$ 97.9
金钱的力量:财富流动、债务、与经济繁荣
《 金钱的力量:财富流动、债务、与经济繁荣 》

售價:HK$ 97.9
超越想象的ChatGPT教育:人工智能将如何彻底改变教育     (土耳其)卡罗琳·费尔·库班     穆罕默德·萨欣
《 超越想象的ChatGPT教育:人工智能将如何彻底改变教育 (土耳其)卡罗琳·费尔·库班 穆罕默德·萨欣 》

售價:HK$ 75.9
应对百年变局Ⅲ:全球治理视野下的新发展格局
《 应对百年变局Ⅲ:全球治理视野下的新发展格局 》

售價:HK$ 85.8
前端工程化——体系架构与基础建设(微课视频版)
《 前端工程化——体系架构与基础建设(微课视频版) 》

售價:HK$ 97.9
道义与天下:中国知识分子精神的古代源流与当代塑造
《 道义与天下:中国知识分子精神的古代源流与当代塑造 》

售價:HK$ 87.8
大钱:如何选择成长股
《 大钱:如何选择成长股 》

售價:HK$ 108.9

 

建議一齊購買:

+

HK$ 107.8
《大规模数据管理》
+

HK$ 227.7
《MySQL经典实例(第四版)》
+

HK$ 119.9
《OLAP引擎底层原理与设计实践》
+

HK$ 102.4
《MongoDB数据建模和模式设计 [美]丹尼尔·库帕 》
+

HK$ 103.3
《SQL语言从入门到精通》
+

HK$ 130.7
《数据分析思维:分析方法和业务知识》
編輯推薦:
权威性:作者为TiDB数据库原厂系列课程与考试的开发者系统性:包含原理篇、性能优化篇和应用场景架构设计篇三个篇章专业性:详细分布式数据库的运行原理、SQL优化、系统优化和应用场景架构设计可读性:内含大量插图、示例、伪代码,便于阅读理解
內容簡介:
本书以TiDB数据库为基础介绍分布式数据库的运行原理、性能优化和应用场景架构设计。首先,剖析分布式数据库的运行原理与架构;然后,阐述分布式数据库TiDB在表与索引的设计优化、SQL优化、系统级优化方面的方法论,通过融入多个有代表性的案例,帮助读者将方法论对应到生产实践中;最后,梳理场景选型和架构设计过程中读者应该掌握的主要知识点,并对一些分布式数据库的优势场景进行了详细介绍。本书适合希望了解分布式数据库原理,学习TiDB数据库的开发工程师、数据库管理员和架构师阅读,也可以作为高等学校教师或学生学习分布式数据库的参考教材。
關於作者:
董菲,PingCAP 首席讲师,常年从事数据库培训、架构设计、开发和维护工作 。曾供职于 Oracle、空中网、微软中国和 ARUZE,是数据库领域的资深专家。多次为人民银行、中国银行、工商银行、农业银行、中国移动、中国联通、铁路总公司、中国邮政、埃森哲和 IBM 等企业提供数据库技术和开发培训。
目錄
丛书序
推荐序一
推荐序二
推荐序三
前言
第一部分 运行原理
第1章  数据库架构概述 003
1.1 集中式数据库的特点 003
1.2 集中式数据库的典型架构 004
1.2.1 单体数据库架构 004
1.2.2 配合缓存机制的数据库架构 005
1.2.3 主从数据库架构 005
1.2.4 Shared-Nothing与Shared-Everything架构 006
1.2.5 交易型数据库+数据仓库 008
1.2.6 基于分表分库中间件的数据库集群架构 008
1.3 分布式数据库的特点 010
第2章  计算引擎TiDB Server的架构与原理 015
2.1 TiDB Server的架构 015
2.2 TiDB Server的主要功能 016
2.3 关系型数据与键值的转换 017
2.4 SQL读写相关模块 022
2.5 Online DDL相关模块 027
2.6 GC机制与相关模块 028
2.7 TiDB Server的缓存 030
2.7.1 TiDB Server缓存的组成结构 030
2.7.2 TiDB Server缓存管理 030
第3章  数据存储引擎TiKV的架构与原理 031
3.1 TiKV的特征 031
3.2 TiKV的架构和作用 032
3.3 RocksDB 033
3.3.1 RocksDB的作用与特点 033
3.3.2 RocksDB的写入与文件组织 034
3.3.3 RocksDB的查询 037
3.3.4 RocksDB的列族 038
3.4 Raft与Multi Raft 039
3.4.1 Raft—日志复制 041
3.4.2 Raft—leader选举 047
3.5 数据的写入 050
3.6 数据的读取—ReadIndex Read  051
3.7 数据的读取—Follower Read  055
3.8 MVCC 056
3.9 分布式事务 061
3.10 Coprocessor 069
第4章  TiDB的“大脑”——PD的架构与原理 073
4.1 PD的架构 073
4.2 PD的主要功能 074
4.3 路由功能 075
4.4 TSO分配 076
4.5 调度 080
4.5.1 为什么要调度 080
4.5.2 信息收集 081
4.5.3 生成调度 082
4.5.4 执行调度 082
第5章  列存与MPP计算引擎TiFlash的架构与原理 083
5.1 TiFlash的架构 083
5.2 TiFlash的关键特性 084
5.3 异步复制 085
5.4 一致性读取 086
5.5 智能选择 091
第二部分 性能优化
第6章  表与索引的设计优化 095
6.1 TiDB数据库中的两种表结构 095
6.1.1 聚簇索引表结构 095
6.1.2 非聚簇索引表结构 096
6.2 表与键值的映射方式 099
6.2.1 聚簇索引表中键值的映射方式 099
6.2.2 非聚簇索引表中键值的映射方式 100
6.3 TiDB中的索引结构 101
6.4 两种表结构的写入对比 103
6.4.1 非聚簇索引表的写入 103
6.4.2 聚簇索引表的写入 105
6.5 两种表结构的读取对比 107
6.5.1 非聚簇索引表的读取 107
6.5.2 聚簇索引表的读取 108
6.6 分布式数据库的热点问题 109
6.6.1 热点问题的形成原因 110
6.6.2 不同表结构的热点问题 111
6.6.3 热点的监控 113
6.6.4 热点的解决 116
6.7 表与索引的设计优化总结 127
第7章  SQL优化 129
7.1 TiDB数据库优化器的工作原理 129
7.1.1 TiDB数据库优化器的工作流程 129
7.1.2 预处理阶段之点查 130
7.1.3 预处理阶段中的构造初始逻辑执行计划 131
7.1.4 逻辑优化 132
7.1.5 物理优化 133
7.2 查看执行计划 136
7.3 数据查询优化之索引优化 138
7.3.1 点查Point_Get & Batch_Point_Get 139
7.3.2 IndexReader(索引读)+ IndexRangeScan(索引范围扫描) 140
7.3.3 IndexLookUp(回表索引读)+ IndexRangeScan(索引范围扫描)+
TableRowIDScan(根据键读取表数据) 141
7.3.4 IndexFullScan(索引全扫描) 144
7.3.5 TableReader(表扫描)+ TableFullScan(全表扫描) 146
7.3.6 IndexMerge(索引合并) 147
7.4 数据查询优化之聚合优化 150
7.4.1 HashAgg算子 150
7.4.2 StreamAgg算子 154
7.5 数据查询优化之表连接优化 157
7.5.1 Hash Join算子 157
7.5.2 Merge Join算子 160
7.5.3 Index Join算子 163
7.6 统计信息管理 166
7.6.1 统计信息的工作原理 167
7.6.2 统计信息的组成 172
7.6.3 统计信息监控 181
7.6.4 收集统计信息 183
7.6.5 统计信息的导入与导出 189
7.7 执行计划管理 190
7.7.1 Optimizer Hints 190
7.7.2 执行计划绑定 193
7.8 SQL优化最佳实践 197
第8章  性能监控与诊断 199
8.1 性能监控概述 199
8.2 TiDB数据库的监控体系 199
8.2.1 Prometheus + Grafana + Alertmanager  199
8.2.2 TiDB Dashboard 201
8.3 常见的性能诊断方法 202
8.3.1 定位慢查询
內容試閱
从与TiDB社区技术中心(CTC)的同事们一起开发TiDB 5.x系列课程到现在,已经有3年了。目前TiDB数据库已演进到8.x版本,相关的新课程与认证也即将发布。在这3年中,已经有上千位工程师、DBA(数据库管理员)、架构师和高等院校师生学习过TiDB 5.x、6.x和7.x的相关课程并通过了相关的认证。
在这期间,我们不停地收集学习者的反馈和建议,“是否能够推出几本与课程对应、关于TiDB数据库核心原理、场景架构设计和性能优化的书籍?”是被提到较多的一条建议。于是,从2023年年初我们便开始着手进行本书的策划和编写工作,经过不懈的努力,本书终于可以和大家见面了。
已出版的系统介绍分布式数据库原理、架构和优化的书籍寥寥无几。分布式数据库和传统数据库在原理层面又截然不同,比如,对于传统数据库,能以极少的篇幅介绍完架构就快速切换到实践环节,而对于分布式数据库,如果没有深入理解分布式系统的运行原理,用户的优化和设计工作就几乎无从下手。所以,我们在编写本书的时候,参考了广大用户在学习TiDB 5.x、6.x和7.x官方课程时的反馈意见,并结合多年的数据库教学经验,按照原理为先、深入浅出讲解方法论、归档总结实践案例三步走的方针进行设计,旨在帮助读者以最合理、最易接受的方式来学习分布式数据库这个相对较难的技术。
在编写本书的过程中,我们尽量保留培训过程中学员反馈较好的图例、案例和表述。对于日常学员反映晦涩难懂的内容和课程中的难点,我们则发挥图书可以图文结合、详细描述的优势,使读者学习起来更加轻松。
在本书中,我们加入了较多既能深刻反映TiDB数据库运行原理,又具有典型方法论的真实生产案例,虽然能够满足读者希望有较多“干货”的愿望,但也请大家一定在了解了分布式数据库的运行原理和特点之后再去体会这些“干货”,这样会有更大的收获。
本书的结构与内容
本书共15章,分为三部分,即运行原理、性能优化和应用场景架构设计。
第一部分(第1~5章)主要以TiDB数据库为基础,介绍分布式数据库的运行原理与设计思路。这部分内容是后续内容的基础,如果读者希望未来从事与分布式数据库相关的工作,则需要理解和掌握这部分内容。在这部分中读者会学习分布式计算引擎TiDB Server的架构与运行原理、最核心的分布式存储引擎TiKV集群的运行原理,以及有着TiDB数据库“大脑”之称的PD集群的核心架构与设计思想。这部分的核心知识包括:SQL解析流程、数据持久化、分布式数据库一致性协议Raft、MVCC、分布式事务、协同计算、列存储(简称为列存)等。只有掌握了这些内容,才能在后面的学习或工作中做到知其然知其所
以然。
第二部分(第6~9章)介绍分布式数据库的性能优化,这是一个方法论与实战案例相结合的部分,读者可以再细分成两个方向来学习。首先是分布式数据库SQL的优化,我们将介绍如何在分布式数据库上写出避免读写热点并能够利用分布式数据库并行、MPP等优势的具有良好性能的SQL语句。其次我们重点介绍基于系统参数和性能监控的系统级别优化,讲解各个性能监控图与指标的含义和判断方法,并根据运行原理对相关参数进行解读,再以实战案例为切入点,总结出多套常用的系统优化方法论。
第三部分(第10~15章)介绍如何进行数据库架构设计和场景选型。针对架构设计中最为重要的高可用架构设计,我们详尽分析各种场景下TiDB分布式数据库的高可用特性和设计要点,包括同城三中心、同城两中心、同中心、两地三中心和异步复制等架构的优缺点等。针对场景选型,我们会从原理和应用两个层面对TiDB数据库的HTAP场景设计、Online DDL、资源管控、多租户和Serverless特性进行阐述。
请注意,本书并没有提及管理操作,而且阅读本书也不需要掌握这部分内容。这样安排是考虑到TiDB数据库的操作命令兼容MySQL数据库语法,读者很容易掌握,而且大部分读者日常只会针对TiDB数据库进行优化和设计,只有数据库管理员才会关注管理操作方面的内容,所以我们就没有在书中给出大量的命令行语句。如果读者希望学习TiDB数据库的管理命令,可以参考官方文档https://docs.pingcap.com/zh/,或者TiDB数据库官方课程“TiDB数据库管理(303)”(https://learn.pingcap.com/learner/course/1110001)。
本书目标读者与学习方法
本书适合希望了解分布式数据库原理,学习TiDB数据库的广大开发工程师、数据库管理员和架构师阅读,也可以作为高等学校教师或者学生学习分布式数据库的参考教材。
如果读者正在学习TiDB数据库官方课程或者准备认证考试,也可以将本书作为配套教材使用。
根据我们的培训经验,除了数据库管理员需要掌握所有内容外,希望在TiDB数据库上开发应用系统的开发工程师可以重点学习第二部分关于SQL优化的内容,架构师可以重点学习第三部分的内容。但是,无论是仅学习第二部分还是仅学习第三部分,都要先掌握第一部分关于分布式数据库架构和运行原理的内容。
本书的参考资料
TiDB数据库官方文档:https://docs.pingcap.com/zh/
TiDB数据库系列课程:https://learn.pingcap.cn/learn

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2025 (香港)大書城有限公司  All Rights Reserved.