1、是什么
远程的内存数据库,非关系型数据库;存储数据的格式是以key-value形式出现的。
2、存储的数据结构
如1中所述,存储到redis中的数据,都是以键值对的形式出现的。这里,redis的值通常支持五种类型,即:字符串,list,set, hash, zset(有序集合)。对这五种类型,分别有以下操作:
(1)string: get: 获得给定键的存储的值
set: 把值存储在对应的键中
del: 删除指定键存储的值
上面这几个操作命令,基本上支持的数据类型都有。
(2)list: lpusu, rpush 把元素推入列表的左边,右边
lpop, rpop 从列表的左边,右边弹出一个元素
lindex: 获取列表在指定位置上的值
lrange: 获取列表在指定范围内的所有值
(3)集合: sadd: 将指定元素添加到集合
smembers: 返回集合中所有元素
sismember: 检查指定元素是否再集合中
srem: 如果元素在这个集合中,就移除这个元素
(4)散列: 可以存储多个键值对之间的映射
hget: 获取指定散列键的值
hset: 在散列里关联指定的键值对
hgetall: 获取散列里包含的所有键值对
hdel: 如果给定的键存在,那么移除这个键
(5)有序集合:zadd,zrange, zrangebyscore(获取有序集合在指定范围内的所有元素), zrem,其他命令的含义可以根据英文单词推出
总结:实际上上述操作都是对redis数据直接操作的,而在实际开发中,通常是用程序来控制。笔者从事java开发,所以一般用jedis操作redis,或者是利用spring-redis-data来配置redis连接池,然后利用StringRedisTemplate操作redis.