鍍金池/ 問答/數(shù)據(jù)庫/ mysql的分片技術(shù)中的動態(tài)分配是怎么實現(xiàn)的?

mysql的分片技術(shù)中的動態(tài)分配是怎么實現(xiàn)的?

看mysql的數(shù)據(jù)庫分片的相關(guān)知識的時候看到說動態(tài)分配是用一個字典表存儲分區(qū)鍵值和分片號,通過鍵值可以查到分片號,但是沒有說清楚新加的分區(qū)鍵如何在這個字典表里沒找到的情況下是怎么分配分片號的,是不是還是像固定分片的那種方式取?;蛘吖R恢滦裕康侨绻沁@么分配分片號的話和固定分配還有什么區(qū)別,為什么要存到一個字典表里?難道是為了查詢的時候能先和字典表匹配減少查詢分片的數(shù)量?有人了解這一塊嗎?

回答
編輯回答
假灑脫

我的理解是,動態(tài)分片是為了解決分片數(shù)據(jù)不均勻。
1、創(chuàng)建字典表是為了后續(xù)加進(jìn)來的數(shù)據(jù)可以動態(tài)分片使得數(shù)據(jù)更均勻;
2、至于什么叫均勻,就是將新加入的數(shù)據(jù)分配到當(dāng)前數(shù)據(jù)量較小的分片中,將該分片號和新加入的數(shù)據(jù)關(guān)聯(lián)記錄到字典表中;
3、而當(dāng)前數(shù)據(jù)量較小的分片可以通過計算每個分片的記錄數(shù)進(jìn)行排序,取最小的分片,這個就是動態(tài)的。計算分片的記錄數(shù)也是有技巧的

2017年5月9日 21:50