From da22dd01cc1d4182b98950366fa6f60bc82566c0 Mon Sep 17 00:00:00 2001 From: BornChanger <97348524+BornChanger@users.noreply.github.com> Date: Tue, 17 Mar 2026 22:32:39 +0800 Subject: [PATCH] Add files via upload --- mermaid.live | 92 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 mermaid.live diff --git a/mermaid.live b/mermaid.live new file mode 100644 index 0000000..a4c7671 --- /dev/null +++ b/mermaid.live @@ -0,0 +1,92 @@ +lowchart LR + %% ========================= + %% Inbound + %% ========================= + subgraph IN["入站:数据进入 TiDB 集群"] + app["业务应用 / SQL 客户端"] + src["上游 MySQL / MariaDB / Aurora MySQL"] + localfile["客户端本地文件"] + files["导出文件 / 数据文件
SQL / CSV / Parquet"] + obj["对象存储
S3 / GCS / OSS / Azure Blob"] + sqlwrite["普通 SQL 写入
INSERT / UPDATE / DELETE"] + loaddata["LOAD DATA
SQL 批量装载"] + dm["DM
全量迁移 + 增量复制"] + dumpling["Dumpling
逻辑导出"] + lightning["TiDB Lightning
外部批量导入"] + importinto["IMPORT INTO
SQL 前门导入
底层走物理导入"] + app --> sqlwrite + app --> loaddata + localfile --> loaddata + obj --> loaddata + src --> dm + src --> dumpling + dumpling --> files + dumpling --> obj + files --> lightning + obj --> lightning + files --> importinto + obj --> importinto + end + %% ========================= + %% Cluster Core + %% ========================= + subgraph CLUSTER["TiDB 集群内部"] + tidb["TiDB Server
SQL 层 / 调度层 / DXF"] + pd["PD / etcd
元信息 / 调度"] + tikv["TiKV
事务 KV / Region / Raft Log"] + tiflash["TiFlash
可选分析副本"] + guard["内建一致性守护
mutation checker
txn assertions
row checksum"] + admin["运行中校验 / 修复
ADMIN CHECK TABLE
ADMIN CHECK INDEX
ADMIN CHECKSUM TABLE
ADMIN RECOVER INDEX
ADMIN CLEANUP INDEX"] + end + sqlwrite --> tidb + loaddata --> tidb + dm --> tidb + importinto --> tidb + tidb --> pd + tidb --> tikv + tidb --> tiflash + tikv --> guard + tidb --> admin + lightning --> tikv + importinto --> tikv + %% ========================= + %% Outbound + %% ========================= + subgraph OUT["出站:数据离开 TiDB 集群"] + outdump["Dumpling
逻辑导出"] + br["BR
全量备份 / 日志备份 / PiTR"] + cdc["TiCDC
增量变更流 Changefeed"] + outfile["外部文件 / 导出目录
SQL / CSV"] + outobj["对象存储
S3 / GCS / Azure Blob / NFS"] + downstreamdb["下游 TiDB / MySQL"] + kafka["Kafka"] + end + tidb --> outdump + tikv --> br + tikv --> cdc + outdump --> outfile + outdump --> outobj + br --> outobj + cdc --> downstreamdb + cdc --> kafka + cdc --> outobj + %% ========================= + %% Side Paths + %% ========================= + subgraph SIDE["旁路:验证 / 恢复 / DR"] + diff["sync-diff-inspector
源端 / 目标端比对
生成修复 SQL"] + postcheck["导入后校验
CHECKSUM / ADMIN CHECKSUM TABLE"] + restore["BR Restore / PiTR Restore"] + restorecheck["恢复后校验
checksum-as / checksum-pitr / checksum-upstream"] + dr["TiCDC 跨集群复制 / DR
最终一致"] + end + src -.源/目标对比.-> diff + tidb -.目标端.-> diff + lightning -.导入后.-> postcheck + importinto -.导入后.-> postcheck + postcheck --> admin + outobj -.恢复回流.-> restore + restore --> tidb + restore --> tikv + restore --> restorecheck + cdc -.DR / 多集群复制.-> dr \ No newline at end of file