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