計算節點
計算節點是負責執行數據處理和查詢計算的節點。計算節點通常負責解析查詢請求,執行數據庫操作,進行數據的聚合、過濾、排序等計算操作,并最終返回查詢結果。計算節點是數據庫系統中的核心部分,負責處理客戶端的查詢請求,執行查詢操作,以及在分布式環境下協調不同存儲節點的數據處理。
存儲節點
存儲節點是負責存儲實際數據的節點。在分布式數據庫中,數據通常被水平拆分成多個數據分片,然后存儲在不同的存儲節點上。每個存儲節點承擔一部分數據,以實現數據的水平擴展,提高系統的性能和可伸縮性。
分片
分片(又稱Sharding)是一種在分布式數據庫中水平劃分數據的概念。它將數據庫中的數據拆分成多個較小的邏輯片段(也稱為分片或分區),然后將這些分片分散存儲在不同的存儲節點上,以實現水平擴展和分布式存儲。
schema
概念
schema即邏輯庫,在后續介紹中將統稱為schema,它類似于傳統單體數據庫中的數據庫,是一個邏輯上的數據庫容器。schema是多個數據庫分片的集合。
介紹
- 對實際應用來說,并不需要知道分布式數據庫中間件的存在,應用開發人員只需要知道數據庫的概念,所以分布式數據庫中間件可以被看做是一個或多個數據庫集群構成的邏輯庫。
- DRDS實例的schema,包括所有邏輯表、分片規則、全局序列等數據,schema切分后形成多個分片,分布在多個存儲節點上。

邏輯表
概念
既然有邏輯庫,那么就會有邏輯表,對實際應用來說,所操作的表就是邏輯表。邏輯表,可以是數據切分后分布多個分片中,也可以不做切分存放在單個分片中。
介紹
在分布式數據庫中邏輯表包括:單片表、分片表、全局表、庫內分表和庫內分桶五種類型的表。
- 單片表
一個數據庫中并不是所有表都很大,某些表是可以不用進行切分的,單片表是相對分片表來說的,就是指那些不需要作數據切分的表。 - 分片表
分片表,是指那些原有很大數據量的表,需要切分到多個數據庫的表中,這樣,每個分片都有一部分數據,所有分片構成完整的數據。 - 全局表
在業務系統中,往往存在大量的類似字典表的數據庫表,這類表的數據量一般較小,變化不頻繁,如:字典、配置、工號、機表、區域等,分布式數據庫中將這類表定義為全局表,即在每個庫都保存一份數據,解決跨庫關聯查詢問題。
全局表的特點:- 不頻繁, 數據量總體變化不大。
- 數據規模不大,很少有超過數十萬條記錄。
- 全局表的插入、更新操作會同步在所有節點上執行。
- 全局表的查詢操作,只需從一個節點獲取。
- 全局表可以跟任何一個表進行JOIN 操作。
- 庫內分表
對于某些存放巨量數據的大表,即使按照分片規則將數據分布到多個分片后,在每個分片的數據量還是非常巨大。對于這種類型的表,可以在分片表的基礎上,在同一個庫內再次按照一定的算法進行分表,我們把這類表稱為庫內分表。 - 庫內分桶
庫內分桶也是分布式數據庫中的一種分片策略,指將單個數據庫中的一個表按照某種哈希算法或其他分桶策略劃分為多個桶(Bucket),然后將這些桶存儲在不同的存儲節點上。每個存儲節點負責處理其中的一部分桶。這種分片策略主要針對表中的數據行進行劃分,通常是通過對數據行的某個屬性進行哈希計算,然后根據哈希值決定該行屬于哪個桶。
標準庫
概念
標準庫存放內部管理數據,對應用是透明無感的,應用無需知道標準庫的存在。
作用
- 存放庫表結構,分庫上的表結構以標準庫的為準。
- 管理命令與庫表結構相關的都發送到標準庫執行。
- 對于可以隨機發送到任意分片執行的SQL語句,統一發送到標準庫執行,如:獲取服務器時間 select now()。
- 在標準庫中創建全局序列最大值備份表,用于備份全局序列當前的最大值。
全局序列
序列
序列,即SEQUENCE,是序列號生成器,可以為表中的行自動生成序列號,產生一組等間隔的數值(類型為數字)。其主要的用途是生成表的主鍵值,可以在插入語句中引用,也可以通過查詢檢查當前值,或使序列增至下一個值。
全局序列
全局序列用來生成全局唯一ID(類型數字),可用于代替單機的AUTO_INCREMENT、主鍵、唯一鍵。在分布式數據庫場景下,一個邏輯庫對應了多個物理數據庫分片,邏輯庫表的主鍵要求在所有物理庫分片上都唯一,這樣用數據庫本身的機制生成序列號就無法滿足業務的需求了,為此分布式數據庫實現了全局唯一的序列號生成器,簡稱全局序列。
全局序列的使用與oralce的sequence使用類似,先創建好sequence,再通過select xxx.nextval 獲取序列值。
注意為保證序列獲取的效率,節點會緩存一段序列,這樣在一個集群中存在多個節點的情況下不能保證序列是嚴格遞增的。
子網
云資源(例如云服務器、物理機等)必須部署在子網內。您可以在虛擬私有云內創建一個或多個子網,但是子網的網段必須在虛擬私有云網段范圍內。同子網內網絡默認互通,同VPC下不同子網之間默認互通。子網網段創建后無法修改。
安全組
安全組是一種網絡安全防護機制,用于防止未經授權的訪問和保護計算機網絡免受惡意攻擊。它是一種虛擬防火墻,用于限制入向和出向網絡流量。安全組工作在網絡層和傳輸層,它通過檢查數據包的源地址、目標地址、協議類型和端口號等信息來決定是否允許通過。安全組創建后,用戶可以在安全組中定義各種訪問規則,當彈性云主機加入該安全組后,即受到這些訪問規則的保護。
區域和可用區
我們用區域和可用區來描述數據中心的位置,您可以在特定的區域、可用區創建資源。
區域(Region)指物理的數據中心。每個區域完全獨立,這樣可以實現最大程度的容錯能力和穩定性。資源創建成功后不能更換區域。
可用區(AZ,Availability Zone)是同一區域內,電力和網絡互相隔離的物理區域,一個可用區不受其他可用區故障的影響。一個區域內可以有多個可用區,不同可用區之間物理隔離,但內網互通,既保障了可用區的獨立性,又提供了低價、低時延的網絡連接。
下圖闡明了區域和可用區之間的關系。

目前,天翼云已在全國多個地域開放,您可以根據需求選擇適合自己的區域和可用區。更多信息請參見天翼云產品部署看板 。