1. 程式人生 > >redis 筆記

redis 筆記

碎片化 內存碎片 哈希 特點 鍵值 滿足 字節流 ngs 字節

1、redis 是一個鍵值對存儲數據的內存數據庫;存儲的數據基本單元可以看作是 字節流;值支持 字符串(Strings)、列表(Lists)、集合(Sets)、哈希(Hashes)、有序集合(Sorted Sets);

2、redis 存儲構成 先分 頁;在頁裏面 分塊(防止內存碎片化);塊是最小單元;需要根據存儲數據的特點設置合適的塊大小(如果數據都比較小,應該將塊設置小一些);以保證內存充分利用;

3、當數據量很大,單個redis實例不能滿足需時,需要多個redis 實例,此時存在 兩次哈希的過程;第一個是定位到某個redis實例;第二次是在具體redis實例上取值;

第一次哈希 用到了 一致性哈希算法;以取余哈希為例,如果取余的基數為實例個數,那麽某個實例故障,導致節點數量變化,哈希的映射關系將出現 大波動;

一致性哈希算法 保證 取余的基數不變(基數一般遠大於實例數);節點數量變化時 哈希值不會變,這就保證了大部分節點不會改變映射關系;具體信息可百度。

redis 筆記