redis类型解析汇总
Redis是一个开源的使用C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
Redis支持的数据类型包括:
String:字符串是最基本的数据类型,可以保存字符串、整数或者浮点数。
解决方案:
# 设置值 redis.set('key', 'value') # 获取值 redis.get('key') # 增加整数 redis.incr('key') # 减少整数 redis.decr('key') # 增加/减少浮点数 redis.incrbyfloat('key', 1.5) redis.decrbyfloat('key', 1.5)
List:列表是简单的字符串列表,按照插入顺序排序。可以从两端进行插入和删除。
解决方案:
# 从列表左侧插入元素 redis.lpush('key', 'value') # 从列表右侧插入元素 redis.rpush('key', 'value') # 获取列表指定范围内的元素 redis.lrange('key', 0, -1) # 从列表左侧弹出元素 redis.lpop('key') # 从列表右侧弹出元素 redis.rpop('key')
Set:集合是无序的字符串集合,不允许有重复元素。
解决方案:
# 添加元素 redis.sadd('key', 'value') # 获取集合中所有元素 redis.smembers('key') # 删除元素 redis.srem('key', 'value') # 检查元素是否在集合中 redis.sismember('key', 'value')
Hash:哈希是由字段和字段值组成的无序映射表。
解决方案:
# 设置哈希字段 redis.hset('key', 'field', 'value') # 获取哈希字段 redis.hget('key', 'field') # 获取哈希中所有字段和值 redis.hgetall('key') # 删除哈希字段 redis.hdel('key', 'field')
Sorted Set:有序集合是具有分数的有序集合,元素是唯一的,但分数可重复。
解决方案:
# 添加元素 redis.zadd('key', {'value': score}) # 获取指定范围内的元素 redis.zrange('key', 0, -1) # 删除元素 redis.zrem('key', 'value') # 获取元素的分数 redis.zscore('key', 'value')
Bitmap:位图不是真正的数据类型,它是通过对字符串进行位操作来实现的。
解决方案:
# 设置位图的位值 redis.setbit('key', offset, value) # 获取位图的位值 redis.getbit('key', offset)
HyperLogLog:超小内存占用的基数统计算法。
解决方案:
# 添加元素 redis.pfadd('key', 'value') # 获取基数估算值 redis.pfcount('key') # 合并两个HyperLogLog redis.pfmerge('key_new', 'key1', 'key2')
评论已关闭