Redis系列(二)—— 數(shù)據(jù)結(jié)構(gòu)

Redis官方說明

Redis is an open source (BSD licensed), in-memory data structure store, used as database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs and geospatial indexes with radius queries. —— redis.io

Redis數(shù)據(jù)結(jié)構(gòu)

字符串(strings):存儲整數(shù)(比如計數(shù)器)和字符串(廢話。。),有些公司也用來存儲json/pb等序列化數(shù)據(jù),并不推薦,浪費(fèi)內(nèi)存。

哈希表(hashes):存儲配置,對象(比如用戶、商品),優(yōu)點(diǎn)是可以存取部分key,對于經(jīng)常變化的或者部分key要求atom操作的適合。

列表(lists):可以用來存最新用戶動態(tài),時間軸,優(yōu)點(diǎn)是有序,確定是元素可重復(fù),不去重。

集合(sets):無序,唯一,對于要求嚴(yán)格唯一性的可以使用,可以用來去重。

有序集合(sorted sets):集合的有序版,很好用,排名之類的復(fù)雜場景可以考慮。

位圖(bitmaps):這個不是新增的數(shù)據(jù)類型,只是可以把字符串類型按照單個位的形式進(jìn)行操作??梢杂脕斫y(tǒng)計活躍用戶,實(shí)現(xiàn)用戶簽到功能,性能頗高。不過統(tǒng)計活躍用戶建議是增量讀取日志或者引入消息中間件異步刷到redis,非業(yè)務(wù)必須功能最好不要影響線上業(yè)務(wù),特別是登錄這種門戶業(yè)務(wù)更是重中之重。

計數(shù)器(hyperloglogs,翻譯待定):如名字,添加元素只記錄元素個數(shù),并不會存儲元素本身,節(jié)省空間并且避免重復(fù)count,這個感覺直接用incr就可以實(shí)現(xiàn)。

地理空間(geospatial indexes):用來做地理位置查詢,比如兩點(diǎn)之間的距離,一個點(diǎn)附近有多少元素,適合點(diǎn)比較固定的場景,或者只考慮當(dāng)前位置的場景,像附近的人這種就不適合,一是需要考慮某段時間內(nèi)的點(diǎn),二是點(diǎn)經(jīng)常更新,壓力比較大。

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

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

  • Redis雜談 Redis是近年來發(fā)展迅速的內(nèi)存數(shù)據(jù)庫,網(wǎng)上也已經(jīng)有多Redis的文章。但不管是英文還是中文,多數(shù)...
    迷失于重逢閱讀 1,707評論 0 14
  • redisredis理論Redis:安裝和配置redis安裝配置和使用redisRedis Cluster程序環(huán)境...
    屬于你的世界閱讀 234評論 0 1
  • redis是一個以key-value存儲的非關(guān)系型數(shù)據(jù)庫。有五種數(shù)據(jù)類型,string、hashes、list、s...
    林ze宏閱讀 1,106評論 0 0
  • Redis 簡介 Redis 是完全開源免費(fèi)的,遵守BSD協(xié)議,是一個高性能的key-value數(shù)據(jù)庫。 Redi...
    陳小陌丿閱讀 14,088評論 0 2
  • 薄霧籠重樓,煙水蕩蘭舟。溫酒怎添愁,月華不解虞殤憂。
    鹿島23333閱讀 198評論 0 0

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