set hello big
big字符串在計算機中存儲爲
0110 0010 0110 1001 0110 0111
redis是可以直接獲取每個位,如下
得到的依次如下:
0110 0010 01
發現和推算的一樣。
這樣,定義一個key,通過設置指定偏移位的值,來存儲數據,最經典的案例爲登錄統計。
如果設置一個很大的偏移量,那麼會將前面都補0。
HyperLogLog和SET差不多。存儲唯一元素,但是hyperLogLog佔用的空間少,同時也會存在0.81%的誤差。
如圖中,hyper中存儲了1000000個數據,通過pfcount獲取基數時發現不是得到的1000000,
hyperloglog無法取出添加進去的數據。在set場景中存儲太多數據,並且對準確率要求不是那麼高的可以
嘗試用hyperloglog。
應用場景
- 統計詞條搜索次數