由於需求,需要對容量2w的redis雜湊進行整村整取,因此針對hash的常用命令進行效率測試;對redis的測試通過golang語言的redis客戶端庫進行;
hgetall
,hget
,hmget
,以及 pipeline下這幾個命令的效率進行測試;測試結果:
效率:hgetall > hmget with pipe ≈ hmget > hget with pipe > hget
個人理解:
測試**如下:
func benchmarkredishash_hgetall(b *testing.b) _global_totalauth"
client := getclient()
b.starttimer()
for i:=1; i< b.n; i++
}func benchmarkredishash_hget(b *testing.b) _global_totalauth"
client := getclient()
b.starttimer()
for i :=0; i測試結果:
goos: windows
goarch: amd64
pkg: ******
benchmarkredishash_hgetall-4 100 84444830 ns/op
benchmarkredishash_hget-4 1 2285130700 ns/op
benchmarkredishash_hgetwithpipe-4 10 178910230 ns/op
benchmarkredishash_hmgetwitchpipe-4 10 149308540 ns/op
benchmarkredishash_hmget-4 10 150108590 ns/op
pass
如有錯誤,歡迎指正;同時期待告知更好的整取大hash的方式; Redis五大資料型別 Hash
set值,獲取值,移除值 127.0.0.1 6379 hset user name lyr set乙個具體的key value integer 1 127.0.0.1 6379 hget user name 獲取乙個字段值 lyr 127.0.0.1 6379 hmset user pwd 123...
8 Redis五大資料型別 雜湊 Hash
1 hset語法 hset給集合中的鍵賦值127.0.0.1 6379 hset k1 name zhangsan age 12 phone 1231312 k1裡存值 integer 3 127.0.0.1 6379 hget k1 name zhangsan 127.0.0.1 6379 hge...
Redis 9 五大資料型別之hash集合
hash類似於map集合。存在鍵值對。1.存值於取值 hset 於hget 127.0.0.1 6379 hset myhash f1 liuqing 設定乙個hash集合為myhash 其中key為f1 值為liuqing integer 1 127.0.0.1 6379 hset myhash ...