使用位圖法來統計
可以用redis的setbit命令來統計(setbit bitop)
如上例,優點:1: 記錄使用者登陸:
每天按日期生成乙個位圖, 使用者登陸後,把user_id位上的bit值置為1
2: 把1周的點陣圖 and 計算,
位上為1的,即是連續登陸的使用者
redis 127.0.0.1:6379> setbit mon 100000000 0
(integer) 0
redis 127.0.0.1:6379> setbit mon 3 1
(integer) 0
redis 127.0.0.1:6379> setbit mon 5 1
(integer) 0
redis 127.0.0.1:6379> setbit mon 7 1
(integer) 0
redis 127.0.0.1:6379> setbit thur 100000000 0
(integer) 0
redis 127.0.0.1:6379> setbit thur 3 1
(integer) 0
redis 127.0.0.1:6379> setbit thur 5 1
(integer) 0
redis 127.0.0.1:6379> setbit thur 8 1
(integer) 0
redis 127.0.0.1:6379> setbit wen 100000000 0
(integer) 0
redis 127.0.0.1:6379> setbit wen 3 1
(integer) 0
redis 127.0.0.1:6379> setbit wen 4 1
(integer) 0
redis 127.0.0.1:6379> setbit wen 6 1
(integer) 0
redis 127.0.0.1:6379> bitop and res mon feb wen
(integer) 12500001
1: 節約空間, 1億人每天的登陸情況,用1億bit,約1200wbyte,約10m 的字元就能表示
2: 計算方便
redis統計使用者活躍數量
1。說明,redis 位圖儲存節省記憶體,使用者id 156,1333 如果使用者登入,根據日期儲存為1 setbit 20209001 156 1 id為156的使用者在1月1號登入了 setbit 20200901 1333 1 id為1333的使用者在1月1號登入了 setbit 202090...
redis統計各種活躍資料
舉個例子 假如乙個字串 z 他的ascii碼是122,二進位制是 0111 1010,offset 0就是從左往右數的第一位,offset 5就是從左往右數的第6位,這裡執行幾步操作 首先設定乙個string型別,key是 k value是 z 然後設定offset 6 為 0,offset 7 為...
Facebook月活躍使用者人數已達20億
pingwest品玩 6 月 28 道,facebook ceo馬克扎克伯格 mark zuckerberg 周二稱,facebook的月度活躍使用者人數已達 20 億人。截至 3 月 31 日為止,facebook的月度活躍使用者人數為19 4 億人,與去年同期相比增長17 這個數字佔www.cp...