importredisconn = 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...