hash 结构
key1 field1 value1
field2 value2
field3 value3
key2 field1 value1
field2 value2
field3 value3
hash 特点
hash 基本命令
-
hget key field
O(1); -
hset key field value
O(1); -
hdel key field
O(1);
示例
127.0.0.1:6382> hset user:1:info age 23
(integer) 1
127.0.0.1:6382> hget user:1:info age
"23"
127.0.0.1:6382> hset user:1:info name ronaldo
(integer) 1
127.0.0.1:6382> hgetall user:1:info
1) "age"
2) "23"
3) "name"
4) "ronaldo"
127.0.0.1:6382> hdel user:1:info age
(integer) 1
127.0.0.1:6382> hgetall user:1:info
1) "name"
2) "ronaldo"
hash 批量操作
hmget key field1 field2 field3 ...
hmset key f1 v1 f2 v2 ...
hash 其他命令
-
hexists key field
O(1); -
hlen key
O(1); -
hgetall key
O(n); -
hvals key
O(n); -
hkeys key
O(n); -
hsetnx key field value
O(1); -
hincrby key field intCounter
O(1); -
hincrbyfloat key field floatCounter
O(1);
示例
127.0.0.1:6382> hlen user:1:info
(integer) 1
实战(一) 统计用户主页访问量
hincrby user:1:info pageview count