您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關redis集合的相關命令,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
Redis 的 Set 是 String 類型的無序集合。集合成員是唯一的,這就意味著集合中不能出現重復的數據。
Redis 中集合是通過哈希表實現的,所以添加,刪除,查找的復雜度都是 O(1)。
集合中最大的成員數為 232 - 1 (4294967295, 每個集合可存儲40多億個成員)。
集合命令的實現方法
命令 | intset 編碼的實現方法 | hashtable 編碼的實現方法 |
---|---|---|
SADD | 調用 intsetAdd 函數,將所有新元素添加到整數集合里面 | 調用 dictAdd,以新元素為鍵,NULL 為值,將鍵值對添加到字典里面 |
SCARD | 調用 intsetLen 函數,返回整數集合所包含的元素數量,這個數量就是集合對象所包含的元素數量 | 調用 dictSize 函數,返回字典所包含的鍵值對數量,這個數量就是集合對象所包含的元素數量 |
SISMEMBER | 調用 intsetFind 函數,在整數集合中查找給定的元素,如果找到了元素存在于集合,沒找到則說明元素不存在集合 | 調用 dictFind 函數,在字典的鍵中查找給定的元素,如果找到了說明元素存在于集合,沒找到則說明元素不存在于集合 |
SMEMBERS | 遍歷整個整數集合,調用 inisetGet 函數返回集合元素 | 遍歷整個字典,使用 dictGetKey 函數返回字典的鍵作為集合元素 |
SRANDMEMBER | 調用 intsetRandom 函數,從整數集合中隨機返回一個元素 | 調用 dictGetRandomKey 函數,從字典中隨機返回一個字典鍵 |
SPOP | 調用 intsetRandom 函數,從整數集合中隨機取出一個元素,再將這個隨機元素返回給客戶端之后,調用 intsetRemove 函數,將隨機元素從整數集合中刪除掉 | 調用 dictGetRandomKey 函數,從字典中隨機取出一個字典鍵,在將這個隨機字典鍵的值返回給客戶端之后,調用 dictDelete 函數,從字典中刪除隨機字典鍵所對應的鍵值對 |
SREM | 調用 intsetRemove 函數,從整數集合中刪除所有給定的元素 | 調用 dictDelete 函數,從字典中刪除所有鍵為給定元素的鍵值對 |
關于redis集合相關命令介紹就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。