Redis特殊數(shù)據(jù)類型bitmap位圖
Redis數(shù)據(jù)類型bitmap位圖
bitmap數(shù)據(jù)結(jié)構(gòu),是基于二進制位來進行操作記錄的,只有0 和 1兩個狀態(tài)。
可以想象成一個數(shù)組,里面只有0或者1。
能干嘛呢?
現(xiàn)實中會有這些場景,比如統(tǒng)計用戶信息,活躍用戶和非活躍用戶、登錄的、未登錄的用戶,打卡的、未打卡的,像這種只有2個狀態(tài),并且數(shù)據(jù)量非常大的,就適合使用bitmap。
網(wǎng)上找了一個對比,可以幫助記憶下bitmap的優(yōu)點。

一、setbit
設(shè)置或者清空key的value(字符串)在offset處的bit值。
那個位置的bit要么被設(shè)置,要么被清空,這個由value(只能是0或者1)來決定。當key不存在的時候,就創(chuàng)建一個新的字符串value。
比如現(xiàn)在我設(shè)置一個用戶的7天的打卡信息,1是打卡,0是未打卡。
setbit sign 0 1 setbit sign 1 1 setbit sign 3 1 setbit sign 4 0 setbit sign 5 1 setbit sign 6 0 setbit sign 2 1

二、getbit
對 key 所儲存的字符串值,獲取指定偏移量上的位(bit)。
getbit sign 4

三、bitcount
統(tǒng)計字符串被設(shè)置為1的bit數(shù)。
不存在的 key 被當成是空字符串來處理,因此對一個不存在的 key 進行 BITCOUNT 操作,結(jié)果為 0 。
bitcount sign

以上就是Redis特殊數(shù)據(jù)類型bitmap位圖的詳細內(nèi)容,更多關(guān)于Redis數(shù)據(jù)類型bitmap位圖的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Redis Set 類型常用操作命令之從基礎(chǔ)命令到實戰(zhàn)應(yīng)用
本文將深入探討Redis Set類型的常用操作命令,包括添加、刪除、查詢以及強大的交集、并集、差集運算,并結(jié)合實際應(yīng)用場景,展示Set 在開發(fā)中的妙用,感興趣的朋友一起看看吧2025-08-08
Redis Sentinel實現(xiàn)哨兵模式搭建小結(jié)
這篇文章主要介紹了Redis Sentinel實現(xiàn)哨兵模式搭建小結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-12-12
Redis Caffeine實現(xiàn)兩級緩存的項目實踐
本文介紹了使用Redis和Caffeine實現(xiàn)兩級緩存,以提高查詢接口的性能,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-12-12
為什么RedisCluster設(shè)計成16384個槽
本文主要介紹了為什么RedisCluster設(shè)計成16384個槽,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09

