1. 演算法簡述:一致性hash環,與redis 槽道原理
1.哈希演算法 對伺服器個數進行模餘存儲,
(下圖)
傳統新增節點 (下圖)
2、哈希環,應用於數據的分布式存儲,在增刪節點之間,能夠盡可能少的遷移數據,保證多數數據的一致性。(下圖)每個節點代表一個數據存儲伺服器。伺服器在通過哈希演算法過後,得到一個固定長度數值a, 由a/65535 模余 得0~65535之間正整數,散列分布在hash環上(下圖)
藍色代表數據,綠色代表數據存儲庫,每個數據存儲庫 管理順時針 ,上個節點之間的區域。(下圖)圖中數字 因該是對65536取余數
在新增節點4 後,只有數據a需要遷移(下圖)
3,槽道原理,綜上所述 ,哈希環減少了 數據在存儲節點增刪 過程中對數據產生的影響。redis 提出的hash槽道,則讓數據遷移變得更為靈活