MyCat分片策略
分片策略
水平分片、垂直分片
水平分片
一個(gè)表,根據(jù)某種規(guī)則,將數(shù)據(jù)存放到不同的數(shù)據(jù)庫中
一個(gè)表格的數(shù)據(jù),分割到多個(gè)節(jié)點(diǎn)上,按照行分隔
垂直分片
一個(gè)數(shù)據(jù)庫,根據(jù)業(yè)務(wù)將多個(gè)數(shù)據(jù)表,分配到不同的數(shù)據(jù)庫中
一個(gè)數(shù)據(jù)庫中多個(gè)表格A,B,C
A存儲(chǔ)到節(jié)點(diǎn)1上,B存儲(chǔ)到節(jié)點(diǎn)2上,C存儲(chǔ)到節(jié)點(diǎn)3上
分片規(guī)則
通過定義表的分片規(guī)則來實(shí)現(xiàn)分片
每個(gè)表格可以捆綁一個(gè)分片規(guī)則
每個(gè)分片規(guī)則指定一個(gè)分片字段并綁定一個(gè)函數(shù),來實(shí)現(xiàn)動(dòng)態(tài)分片算法
Schema
邏輯庫,與MySQL中的Database(數(shù)據(jù)庫)對(duì)應(yīng)
一個(gè)邏輯庫中定義了所包括的Table
Table
表,即物理數(shù)據(jù)庫中存儲(chǔ)的某一張表,與傳統(tǒng)數(shù)據(jù)庫不同,
這里的表格,需要聲明其所存儲(chǔ)的邏輯數(shù)據(jù)節(jié)點(diǎn)DataNode
在此,可以指定表的分片規(guī)則
DataNode
MyCAT的邏輯數(shù)據(jù)節(jié)點(diǎn)
是存放table的具體物理節(jié)點(diǎn),也稱之為分片節(jié)點(diǎn)
通過DataSource來關(guān)聯(lián)到后端某個(gè)具體數(shù)據(jù)庫上
DataSource
定義某個(gè)物理庫的訪問地址,用于捆綁到Datanode上
總結(jié)