91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

位圖法統計活躍用戶

發布時間:2020-07-21 14:20:12 來源:網絡 閱讀:426 作者:梁十八 欄目:關系型數據庫

Setbit 的實際應用

場景: 1億個用戶, 每個用戶 登陸/做任意操作 ,記為 今天活躍,否則記為不活躍

每周評出: 有獎活躍用戶: 連續7天活動
每月評,等等...

思路:

Userid dt active
1 2013-07-27 1
1 2013-0726 1

如果是放在表中, 1:表急劇增大,2:要用group ,sum運算,計算較慢

用: 位圖法 bit-map
Log0721: ‘011001...............0’

......
log0726 : ‘011001...............0’
Log0727 : ‘0110000.............1’

1: 記錄用戶登陸:
每天按日期生成一個位圖, 用戶登陸后,把user_id位上的bit值置為1

2: 把1周的位圖 and 計算,
位上為1的,即是連續登陸的用戶

redis 127.0.0.1:6379> setbit mon 100000000 0 (一億用戶星期一的初始狀態,都是0)
(integer) 0
redis 127.0.0.1:6379> setbit mon 3 1 (3號用戶周一登錄一次,計為1)
(integer) 0
redis 127.0.0.1:6379> setbit mon 5 1(5號用戶周一登錄一次,計為1)
(integer) 0
redis 127.0.0.1:6379> setbit mon 7 1(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: 計算方便

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

昆明市| 遂昌县| 罗甸县| 南汇区| 涟水县| 凤城市| 古交市| 贵州省| 南昌市| 宁强县| 长岛县| 河西区| 华坪县| 三明市| 澄迈县| 德安县| 大足县| 墨玉县| 淮安市| 双牌县| 洛川县| 辉南县| 铅山县| 江北区| 湘潭市| 江川县| 密云县| 深水埗区| 五大连池市| 达州市| 肥城市| 武穴市| 安阳县| 肃北| 松潘县| 武城县| 北安市| 宕昌县| 合川市| 和顺县| 红河县|