注:此文原載於本人網易部落格,並加上工作日常總結完善,統一彙總於csdn部落格發布
【redis資料結構 – 簡介】
redis是一種高階的key:value儲存系統,其中value支援五種資料型別:
1.字串(strings)
字串型別是redis最基礎的資料結構,鍵是字串型別,其他幾種結構都是在字串型別基礎上構建的。
使用場景:
2.字串列表(lists)
列表型別是用來儲存多個有序的字串,列表中的每個字串成為元素(element),乙個列表最多可以儲存
2的32次方-1個元素,在redis中,可以隊列表兩端插入(pubsh)和彈出(pop),還可以獲取指定範圍的元素
列表、獲取指定索引下表的元素等,列表是一種比較靈活的資料結構,它可以充當棧和佇列的角色,
在實際開發中有很多應用場景。
優點:1.列表的元素是有序的,這就意味著可以通過索引下標獲取某個或某個範圍內的元素列表。
2.列表內的元素是可以重複的。
使用場景:
3.字串集合(sets)
集合型別也是用來儲存多個字串的元素,但和列表不同的是集合中不允許有重複的元素,並且集合中的元素是
無序的,不能通過索引下標獲取元素,redis除了支援集合內的增刪改查,同時還支援多個集合取交集、並集、
差集,並合理的使用好集合型別,能在實際開發中解決很多實際問題。
sadd=tagging(標籤)
spop/srandmember=random item(生成隨機數,比如**)
sadd+sinter=social graph(社交需求)
4.有序字串集合(sorted sets)
有序集合和集合有著必然的聯絡,他保留了集合不能有重複成員的特性,但不同得是,有序集合中的元素是可以
排序的,但是它和列表的使用索引下標作為排序依據不同的是,它給每個元素設定乙個分數(score),作為排序的依據。
(有序集合中的元素不可以重複,但是score可以重複,就和乙個班裡的同學學號不能重複,但考試成績可以相
同)。使用場景:
5.雜湊(hashes)
在redis中雜湊型別是指鍵本身又是一種鍵值對結構,如 value=,......}
使用場景:
雜湊結構相對於字串序列化快取資訊更加直觀,並且在更新操作上更加便捷。
所以常常用於**使用者資訊**等管理,但是雜湊型別和關係型資料庫有所不同,雜湊型別是稀疏的,
而關係型資料庫是完全結構化的,關係型資料庫可以做複雜的關係查詢,而redis去模擬關係型複雜查詢
開發困難,維護成本高。
NoSQL資料庫之 Redis
redis是基於記憶體的nosql資料庫。前身是memcached,但是memcached不支援持久化,沒有豐富的資料型別。redis存放的資料是key values鍵值對。1 解壓 tar zxvf redis 3.0.5.tar.gz 預編譯,需要gcc環境。apt get install gc...
NoSql資料庫之redis資料庫簡介及安裝
一 redis資料庫簡介 redis是用c語言開發的乙個開源的高效能鍵值對 key value 資料庫。它通過提供多種鍵值資料型別來適應不同場景下的儲存需求,目前為止redis支援的鍵值資料型別如 下 1 字串型別 string 2 雜湊型別 hash 3 列表型別 list 4 集合型別 set ...
redis redis之nosql資料庫
not only sql,不僅僅值sql,而是一種全新的資料庫理論。可以理解為no relational,既非關係型性資料庫 關係型資料庫和非關係型資料庫不是對立,而是相輔相成的,nosql資料庫有特殊的結構,將資料庫儲存到記憶體裡面的,從效能的角度來講,nosql資料庫的效能優於關係型資料庫。從安...