bitmap

記錄下bitmap的兩個(gè)應(yīng)用場景,bitmap的用法,set key offset value。
1、統(tǒng)計(jì)單日用戶活躍數(shù)數(shù)
假設(shè) 2020-10-13,有用戶id為123456,123457,123458的用戶登陸
假設(shè) 2020-10-14,有用戶id為123456的用戶登陸
bitset 20201013 123456 1
bitset 20201013 123457 1
bitset 20201013 123458 1
bitset 20201014 123456 1
統(tǒng)計(jì)20201013 這天有多少人登陸:
bitcount 20201013
統(tǒng)計(jì)2020-10-13到2020-10-14這兩天有多少人登陸
bittop or res 20201013 20201014
bitcount res 0 -1

2、統(tǒng)計(jì)一個(gè)用戶的登陸情況
假設(shè) 2020-10-13,有用戶id為123456登陸了
假設(shè) 2020-10-14,有用戶id為123456登陸了
bitset 123456 20201013 1
bitset 123456 20201014 1
統(tǒng)計(jì) 123456的登陸天數(shù):
bitcount 123456 或這 bitcount 123456 20200101 20201230

3、關(guān)于區(qū)間內(nèi)連續(xù)登陸問題,比如統(tǒng)計(jì)123456從20201001 到20201007是不是連續(xù)7天登陸
可以這么設(shè)計(jì),offset代表第1天,第2天..
bitset 123456 1 1
bitset 123456 2 1
判斷是不是連續(xù)7天登陸
getbit 123456拿到值和11111110做與運(yùn)算或異或運(yùn)算
這樣設(shè)計(jì)就要單獨(dú)創(chuàng)建數(shù)據(jù)空間,不能用到上面第二種的這種數(shù)據(jù)bitset 123456 20201013 1,很可惜沒有支持這種api,getbit key start end。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容