首頁 >資料庫 >Redis >redis索引是什麼

redis索引是什麼

(*-*)浩
(*-*)浩原創
2019-11-21 13:18:106682瀏覽

redis索引是什麼

redis不直接支援索引,需要透過自己來維護。

對於非範圍唯一索引,我們可以簡單的把索引也存成KV對,v保存主key即可,而範圍檢索,或者非唯一索引,則要使用redis的zset來實作。      (建議學習:Redis影片教學

舉例一個傳統的使用者係統範例

uid 用户id
name 用户名
credit 用户积分
type 类型

#可以直接放到一個hashset中

hmset usr:1 uid 1 name aaa credit 10 type 0
hmset usr:2 uid 2 name bbb credit 20 type 1

透過uid檢索很快,但是如果要查詢type=1的用戶,則只能全掃描!

在關聯式資料庫中,我們可以簡單在type上建立索引

select * from usr where type=1

這樣的SQL就可以高效執行了。 redis中需要我們自己再維護一個zset

zadd usr.index.type 0 0:1
zadd usr.index.type 0 1:2

注意,所有權重都設定成0,這樣可以直接按值檢索,然後可以透過

zrangebylex usr.index.type [1: (1;

以上是redis索引是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn