Redis基礎3(redis字典操作)

2022-05-22 22:27:16 字數 2485 閱讀 4548

importredis

conn = redis.redis(host='192.168.131.129', port=6379, password='123456')

# 存值

# conn.hset('k4', 'name', 123)

# conn.hset('k4', 'age', 66)

# 取值

# 取單個值

# val = conn.hget('k4','name')

# 取所有值

name對應的hash中設定乙個鍵值對(不存在,則建立;否則,修改)

#引數:

#name,redis的name

#key,name對應的hash中的key

#value,name對應的hash中的value#注:

#hsetnx(name, key, value),當name對應的hash中不存在當前key時則建立(相當於新增)

#

在name對應的hash中批量設定鍵值對

#引數:

#name,redis的name##

如:#r.hmset('xx', )

#

在name對應的hash中獲取根據key獲取value

#

在name對應的hash中獲取多個key的值

#引數:

#name,reids對應的name

#keys,要獲取key集合,如:['k1', 'k2', 'k3']

#*args,要獲取的key,如:k1,k2,k3#如:

#r.mget('xx', ['k1', 'k2'])#或

#print r.hmget('xx', 'k1', 'k2')

獲取name對應hash的所有鍵值

#

獲取name對應的hash中鍵值對的個數

#

獲取name對應的hash中所有的key的值

#

獲取name對應的hash中所有的value的值

#

檢查name對應的hash是否存在當前傳入的key

#

將name對應的hash中指定key的鍵值對刪除

#

自增name對應的hash中的指定key的值,不存在則建立key=amount

#引數:

#name,redis中的name

#key, hash對應的key

#amount,自增數(整數)

#

自增name對應的hash中的指定key的值,不存在則建立key=amount

#引數:

#name,redis中的name

#key, hash對應的key

#amount,自增數(浮點數)

#自增name對應的hash中的指定key的值,不存在則建立key=amount

#

增量式迭代獲取,對於資料大的資料非常有用,hscan可以實現分片的獲取資料,並非一次性將資料全部獲取完,從而放置記憶體被撐爆

#引數:

#name,redis的name

#cursor,游標(基於游標分批取獲取資料)

#match,匹配指定key,預設none 表示所有的key

#count,每次分片最少獲取個數,預設none表示採用redis的預設分片個數#如:

#第一次:cursor1, data1 = r.hscan('xx', cursor=0, match=none, count=none)

#第二次:cursor2, data1 = r.hscan('xx', cursor=cursor1, match=none, count=none)

#...

#直到返回值cursor的值為0時,表示資料已經通過分片獲取完畢

#

利用yield封裝hscan建立生成器,實現分批去redis中獲取資料

#引數:

#match,匹配指定key,預設none 表示所有的key

#count,每次分片最少獲取個數,預設none表示採用redis的預設分片個數#如:

#for item in r.hscan_iter('xx'):

#print item

3 Redis的安裝和配置

redis其實是可以安裝在linux和windows的,都是實際應用中肯定是在linux環境下,所以就只記錄在linux下的操作步驟吧 開啟redis官網 上傳完之後我們用xshell連線伺服器,進入到我們所上傳的目錄 然後使用命令 解壓我們上傳的壓縮包 tar zxvf redis 2.8.0.t...

3 redis之資料庫

資料庫的數量通過database命令設定或在配置檔案中設定,預設16 讀寫鍵空間時的維護 1 在讀取或寫入乙個鍵時,伺服器會根據鍵是否存在來更新伺服器的鍵命中次數和不命中次數,可以通過info stats命令檢視 2 在讀取乙個鍵值,伺服器會更新鍵的lru屬性 3 如果伺服器在讀取乙個鍵時,如果這個...

Redis學習 3 字典

字典,別名符號表 symbol table 關聯陣列 associative array 或對映 map 是一種用於儲存鍵值對的抽象資料結構。c語言中雖然沒有內建字典這種資料結構,但是redis自己在底層實現了這種資料機構,並且其資料庫就是使用字典來作為底層實現。redis中的鍵 key 和值 va...