「Shard」原意「碎片」,源於 MMORPG 遊戲架構。Sharding 非單一技術,而是在應用層或中間件層實現的數據水平切分架構模式,將同一邏輯表的數據按規則分散到多個物理數據庫/服務器,突破單機 I/O 與存儲上限。
| 維度 | Sharding (分片) | Partition (分區) |
|---|---|---|
| 部署範圍 | 跨多台物理服務器 | 單實例內部 |
| 架構層級 | 分布式系統 | 單機存儲引擎特性 |
| 擴展能力 | 線性水平擴展 | 受限於單機資源 |
| 實現複雜度 | 高(路由、分佈式事務、遷移) | 低(DDL 語句) |
| 透明度 | 需中間件/應用層路由 | SQL 層透明 |