您好,登錄后才能下訂單哦!
TiDB架構圖如下
TiDB 集群主要分為三個組件:
TiDB Server
TiDB Server 負責接收 SQL 請求,處理 SQL 相關的邏輯,并通過 PD 找到存儲計算所需數據的 TiKV 地址, 與 TiKV 交互
獲取數據,最終返回結果。 TiDB Server 是無狀態的,其本身并不存儲數據,只負責計算,可以無限水平擴展, 可以通過
負載均衡組件(如LVS、HAProxy 或 F5)對外提供統一的接入地址。
// 類比MongoDB分片集群中的mongos或者叫router server
PD Server
Placement Driver (簡稱 PD) 是整個集群的管理模塊,其主要工作有三個: 一是存儲集群的元信息(某個 Key 存儲在哪個
TiKV 節點); 二是對 TiKV 集群進行調度和負載均衡(如數據的遷移、Raft group leader 的遷移等);三是分配全局唯一
且遞增的事務 ID。
PD 是一個集群,需要部署奇數個節點,一般線上推薦至少部署 3 個節點。
//類比MongoDB分片集群中的config server
TiKV Server
TiKV Server 負責存儲數據,從外部看 TiKV 是一個分布式的提供事務的 Key-Value 存儲引擎。存儲數據的基本單位是
Region, 每個 Region 負責存儲一個 Key Range (從 StartKey 到 EndKey 的左閉右開區間)的數據, 每個 TiKV
節點會負責多個 Region 。TiKV 使用 Raft 協議做復制,保持數據的一致性和容災。 副本以 Region 為單位進行管理,
不同節點上的多個 Region 構成一個 Raft Group,互為副本。 數據在多個 TiKV 之間的負載均衡由 PD 調度,
這里也是以 Region 為單位進行調度。
//類比MongoDB分片集群中的replica set
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。