腾飞_中
(Ti D Ber P Cw78h7 J)
1
【作品名称】《平凯仙录:云起分布式》术语对照与设定集
【选择的创作方向】产品特性解读
【作品形式】其他
【作品介绍/描述】
【作品链接/文件】
《平凯仙录:云起分布式》术语对照与设定集
没学过 TiDB 也能读。正文里每遇到新招式,玄衡真君都会先打比方,再点一次正式名字。本表只做备查,不必先背完。
全书修仙称谓固定,后续章节不得另起别名。
怎么读
- 把「玉简表」想成一张 Excel:行是一条记录,列是字段。
- 把「命牌」想成主键:每个人只有一个身份证号。
- 把「单机巨灵道」想成把所有数据塞进一台超级电脑。
- 把「平凯混元大阵」想成把计算、调度、存储拆开,用很多台机器一起干活。
- 正文用〔〕给修仙名词加一句白话,例如「数符〔账本上的一行〕」「玉简表〔一张有行列的账本〕」。每章同一个词只注第一次;〔〕里是人话,()里才是英文专名。
全书主线(先读这个)
太数门百年大典,是把三万新晋弟子的命牌写进账本。写不进,人就是游魂。巨石宗少主石天霸带着「贺礼」内存灵石来观礼,盟约里写着:井一塌,太数门可被兼并。他要的不只是一座山门,还有太数门在大千交易所里的地契那一行。
杂役莫寻在偏殿废墟里拾到《平凯玄天录》,器灵玄衡真君只讲理、不代打。莫寻一路救人救门:先保住命牌入账,再把一口井迁进后土,再从交易所抢回地契,最后在青云仙盟的万仙论道上拆穿单机极道。石天霸咬破第一章就带着的贺礼符,放出附在符里的天魔。天魔散了,太数门改作平凯分坛,莫寻飞升。
每一章的招式,都是这条存亡线上的某一次动手,不是新开一堂课。
| 章 |
故事上发生了什么 |
这一章用上的招 |
| 1 |
石天霸贺礼入场,大典井爆,莫寻得残卷 |
单机三绝劫 |
| 2 |
命牌写不进,莫寻按门牌重排,石天霸改送慢查 |
聚簇、前缀、回表 |
| 3 |
石天霸以观礼投下畸形法旨,要让仙盟看见太数门不会查人 |
无状态、拆句法旨 |
| 4 |
笛卡尔深渊要让太数门账乘上仙盟名录;掌门当众弃井,约三日迁后土 |
CBO、算子下推 |
| 5 |
积压命牌和灌账压后土;执事要砸丹田;石天霸引单点天劫 |
LSM 晨露冰心金阶 |
| 6 |
翠微峰被劈,石天霸带兼并文书上山,看见人死账不死 |
Raft 过半、禁脑裂 |
| 7 |
账本气满欲裂;仙盟急报地契和巨石宗对不上时序 |
Region 切开,不碎玉 |
| 8 |
莫寻上天发号,救的是地契先后;石天霸改抢正本那一行 |
TSO、PD |
| 9 |
抢回太素造化草即地契正本;仙盟仍要论道上同时交割和排名 |
本命锁、踏天两步 |
| 10 |
圣山论道,金乌旁听算大账;石天霸坐不住 |
TiFlash Learner |
| 11 |
八十一路傀儡对水平铺开;石天霸咬破贺礼符 |
Scale-Out |
| 12 |
天魔断网打热点;石天霸被当炮灰后醒悟 |
分区、热点、禁脑裂 |
| 13 |
残魂暗蚀;执事来学看图 |
Dashboard |
| 14 |
太数门改平凯分坛,账流仙盟,备份防风暴,莫寻飞升 |
CDC、BR |
世界
| 修仙称谓 |
技术对应 |
一句话白话 |
| 数灵界 |
数据世界 |
这个世界里,事情要写进账本才算发生 |
| 数符 |
Data Record / Row |
账本上的一行:一条弟子记录、一笔灵石账 |
| 玉简表 |
Table |
一张有行列的账本 |
| 命牌 |
Primary Key / 主键行 |
每人唯一的身份证,用来精确找到这一行 |
| 青云单机鉴 |
单机数据库实例 |
太数门那台「一口井」式的大机器 |
| 太数门 |
旧法宗门 |
还在用单机扛全宗事务的门派 |
| 巨石宗 |
Scale-Up 阵营 |
迷信「机器越大越强」的对头宗门 |
| 大千交易所 |
跨库跨城交易系统 |
很多座城同时买卖,必须有统一时钟和跨城事务 |
| 青云仙盟 |
多宗联盟业务 |
既要当场交割(OLTP),又要当场算大账(OLAP) |
人物
| 名 |
身份 |
定型 |
| 莫寻 |
太数门杂役,天生单机伪灵根 |
救人救门,会追问「这是什么意思」 |
| 玄衡真君 |
《平凯玄天录》器灵 |
毒舌学究,讲到杂役听懂,不代打 |
| 掌门 |
太数门掌门 |
护宗,第四章起当众弃井 |
| 执事 |
太数门执事 |
出事就喊加内存,第十三章学会看图 |
| 查验长老 |
太数门查验长老 |
大典查人,多次被慢查反噬 |
| 石天霸 |
巨石宗少主 |
第一章贺礼入场,要兼并太数门;第十一章败后咬符放出天魔 |
境界
| 境界 |
对应篇章 |
你会学到什么 |
| 炼气·筑基 |
第一卷 第 1–4 章 |
单机为什么会崩;索引、SQL 优化、把活推到存储层 |
| 结丹·元婴 |
第二卷 第 5–9 章 |
数据怎么落盘、怎么复制、怎么分片、怎么定时间、怎么做跨行事务 |
| 化神·飞升 |
第三卷 第 10–14 章 |
分析与交易共存、水平扩容、分区与热点、看图排障、备份同步 |
旧法与劫难
| 修仙称谓 |
技术对应 |
一句话白话 |
| 单机巨灵道 |
Scale-Up |
只养一台机器,出事全死 |
| 玄天单机宝鉴 |
单体数据库机器 |
内存、磁盘、CPU 全堆在同一具肉身上 |
| 磁盘告磬之劫 |
Disk Full |
盘写满了,新账落不下去 |
| 锁心魔 |
Deadlock / Lock Timeout |
两个人互相等对方放手,谁也走不了 |
| 天火焚神 |
CPU 100% 熔断 |
慢查询把处理器烧满 |
| 识海漫灌 |
Full Table Scan |
没有路标,只好把整本账翻一遍 |
| 连接池爆满 |
Too Many Connections |
门口座位坐满,后来的人进不去 |
| 碎玉分身术 |
Sharding / 分库分表 |
把一张大表砍成很多小库,跨库办事极难 |
| 乾坤停机大挪移 |
停机扩容 / reshard |
要搬家必须先封山停业 |
| 时间漂移 |
NTP 抖动 / 物理时钟乱序 |
各城挂钟不准,先发生的事被记成后发生 |
| 因果死锁死海 |
分布式死锁 |
很多人互相锁等待,整场交易冻住 |
| 虚空绝灵网 |
Network Partition |
网络断开,两边听不见对方 |
| 焚天热点暴击 |
Write Hotspot |
所有人同时改同一把钥匙,那一点被写爆 |
| 脑裂 |
Split-brain |
断开后两边都自称掌门,账本写成两本 |
平凯混元大阵
| 修仙称谓 |
技术对应 |
一句话白话 |
| 《平凯玄天录》 |
TiDB 真传残卷 |
教人用一群机器代替一口井 |
| 平凯混元大阵 |
TiDB 分布式体系 |
计算、调度、存储、分析、事务拆开又合成一套 |
| 天道识海·TiDB 节点 |
TiDB SQL 层 |
只负责听懂 SQL、想办法,自己不存账本 |
| 法旨解析 |
SQL Parsing |
把一句人话拆成计算机能走的步骤 |
| 抽象语法树 |
AST |
拆完之后的骨架图 |
| 天机算筹·Explain 破妄诀 |
EXPLAIN / 逻辑优化 |
先看计划再动手,砍掉多余的活 |
| 移山倒海·Coprocessor 秘术 |
Coprocessor 下推 |
过滤、汇总尽量在存数据的地方做完,少搬砖 |
| CBO 天道算筹 |
Cost-Based Optimizer |
先估代价,再选最便宜的走法 |
| 聚簇前缀神引法 |
Clustered Index + 前缀/复合索引 |
按主键排队存放,常用条件再指路牌 |
| 回表之滞 |
IndexLookUp |
路牌上只有号码,还得再跑一趟取整行 |
| 混元统天盘·PD |
Placement Driver |
总调度:数据放哪、时钟从哪领 |
| 太初时序印 |
TSO |
全天下统一发号的逻辑时间,只增不减 |
| 后土万象界·TiKV |
TiKV |
真正存行数据的地方 |
| LSM-Tree 枯荣心法 |
LSM-Tree |
新账先写内存,再一层层压到磁盘,绝不原地乱改 |
| 晨露之泉 |
MemTable |
内存里正在写的那一层 |
| 冰心 |
Immutable MemTable |
写满后冻结,准备落盘,不再接新写 |
| 七层金阶 / 千叶楼 |
Leveled Compaction / SST |
磁盘上分层整理过的文件 |
| 写放大心魔 |
Write Stall / Write Amplification |
整理跟不上写入,系统会主动停笔自保 |
| Raft 三清共识契约 |
Raft |
三份账,过半同意才算写下;一台死了另一台接 |
| 租约神读 |
Lease Read |
主座租期内可本地快读,不必每次投票 |
| 灵脉胞衣 |
Region |
一段连续主键区间,大约 96MB~144MB 切一刀 |
| 气满则分裂 |
Region Split |
这一段太大或太热,就从中间切开 |
| 战后归并 |
Region Merge |
切得太碎再合回去 |
| 神念散星诀 |
Scatter Region / 打散热点 Key |
把挤在一点的写入拆到很多机器 |
| 大日金乌镜·TiFlash |
TiFlash |
按列存放的副本,适合一次扫很多行的少数几列 |
| 破妄真瞳 |
OLAP 分析 |
大汇总、大宽表、看趋势 |
| Learner 契约 |
Raft Learner |
只旁听复制,不投票、不抢主、不加交易锁 |
| 阴阳双生 HTAP |
HTAP |
同一套数据,既能做小买卖,又能算大账 |
| 两仪定因锁 |
Percolator |
跨很多行的事务:先锁、后提交 |
| 踏天两步 |
2PC:Prewrite + Commit |
第一步预写,第二步只敲本命锁就算成交 |
| 破执 Resolve |
Resolve Lock |
有人掉线留下的锁,后来者看本命锁决定提交还是回滚 |
| 快照隔离金身 |
Snapshot Isolation |
你开始办手续那一刻的世界,别人后改的你看不见 |
| 天道巡天图谱 |
TiDB Dashboard |
一张图看慢查询、热点、哪台机器在喘 |
| 万象灵火谱 |
Key Visualizer |
热力图:哪一段主键被摸得最勤 |
| 乾坤化雨术 |
TiCDC |
把已经敲定的变更,实时流到别的系统 |
| 造化神舟 |
BR Backup & Restore |
按磁盘文件做分布式备份和恢复,不是一行行抄 |
斗法招式与物理算子
| 招式 |
技术 |
什么时候用,人话 |
| 索引连环斩 |
IndexJoin |
左边行不多,右边能按索引点到人 |
| 混元散列绞 |
HashJoin |
两边靠「相等」对上,把较小的一侧在内存里建字典 |
| 双脉合流斩 |
MergeJoin |
两边已经排好序,可以像拉链一样往前合 |
| 笛卡尔深渊 |
Cartesian Product |
忘了写关联条件,两边每行都跟对方所有行配对,会炸 |
扩展之道
| 修仙称谓 |
技术对应 |
一句话白话 |
| 单机极道 |
Scale-Up |
把一台机器堆到极限,贵,而且总会到顶 |
| 万界混元 / 水平铺开 |
Scale-Out |
加机器就能加能力,计算和存储分开加 |
| 无状态法身千尊 |
TiDB 计算节点水平扩展 |
多加几台只负责算 SQL 的节点 |
| 万座龙脉结界 |
TiKV 存储水平扩展 |
把一段段 Region 搬到新机器,不必停业 |
硬性不变量(写作禁区)
这些规则在故事里永远成立,也是 TiDB 真正在守的底线:
- Raft 提交必须多数派过半。三台里至少两台点头,账才算写下。网络断开时,凑不齐票的那一边不许自称掌门,禁止两边同时写(脑裂)。
- LSM 必含三层:晨露之泉(MemTable)→ 冰心(Immutable MemTable)→ 七层金阶(SST)。整理跟不上,可以停写,不许假装能无限狂写。
- Percolator 事务拿本命锁(Primary Lock)判生死。提交时先敲本命锁;其余副锁可以稍后根据本命锁自行了结。
- 太初时序印(TSO)必须全局只增不减。各城墙上的物理挂钟,不能拿来当跨城先后顺序。
- TiFlash 是 Learner:只旁听复制,不抢 Leader,也不给前台交易加行锁。
- Region 是一段连续的主键区间,不是哈希打散的槽。默认大约 96MB~144MB 切一刀。
- 计算层无状态:TiDB 节点不存账本,账本只在 PD 与 TiKV。莫寻识海可以化出很多法身,肉身不必自己扛数据。