-
1.读音:N-o-SQL = Not Only SQL 泛指非关系型数据库。
2.为什么需要使用:高并发读写、海量数据的高效率存储和访问、高可扩展性和高可用性和灵活的数据类型。
3.主流 NoSQL 产品:Redis,mongoDB 等。
查看全部 -
NoSQL的概述
Redis的概述
Redis的安装和使用
Jedis的入门(程序连接Redis)
Redis的数据类型
Keys的通用操作
Redis的特性
Redis的持久化
查看全部 -
四类nosql数据库比较
查看全部 -
redis同步方式:
1、每秒同步:当服务器宕机,那一秒内修改的数据没有记录
2、每修改同步:效率最低,但是最安全
3、不同步
查看全部 -
redis特性:多数据库
最多可以连接16个数据库,下标从0-15,默认连接下标为0数据库(下面n表示几号数据库)
select 1:选择1号数据库
move key n:连接了一个数据库n1,然后将n1中的key移到数据库n中
redis中事务的相关命令:multi-开启事务、exec-提交、discard-回滚
查看全部 -
keys *:查看所有key
keys my?:查询以my开头的key
del key1 key2 ...:删除key1、key2.。。。
exists key:key存在返回1,不存在返回0
get key:返回key对应的值
rename key1 key2:将key1重命名为key2
expire key a:设置key的过期时间为a,默认单位为秒
ttl key:得到key将过期的时间是多少
type key:获取key的类型
查看全部 -
redis mongodb
查看全部 -
Sorted-Set(有序)
数据类型:zset
应用场景:
1、大型在线游戏积分排行榜
2、构建索引数据
zadd sort名 a1 b1 a2 b2 a3 b3...an bn:
(a.分数 b.值 :类似于键值对)往sort中添加n个元素,并且返回n;
当n=1,往sort中添加元素,如果b存在,则更新a的值,返回0;否则插入a b,返回1
zscore sort名 b:返回元素b对应的分数
zcard sort:返回sort的大小
zrem sort b1 b2:删除b1、b2,返回删除个数
zrange sort 0 -1 (withscores):分数由小到大的显示sort中的值,带上withscores会以值-分数的形式由小到大显示
zrevrange sort 0 -1 (withscores):分数由大到小的显示sort中的值,带上withscores会以值-分数的形式由大到小显示
zramrangebyrank sort a b:删除sort中下标是a-b之间的元素(包含下标a、b对应的元素)。正数表示正着数,负数表示倒着数
zremrangebyscore sort score1 score2:删除分数是score1到score2之间的元素
zrangebyscore sort score1 score2(withscores)(limit a b):由低到高显示分数score1到score2之间的元素(带上分数显示)(显示a-b之间的元素)
zincrby sort a b:将元素b对应的分数加a,返回加完之后b对应的分数
zcount sort score1 score2:返回分数score1到分数score2之间的元素个数
查看全部 -
Set
使用场景:
1、跟踪一些唯一性数据(ip是否唯一登录)
2、用于维护数据对象之间的关联关系(比如淘宝统计两个用户是否买了一样的商品)
sadd set名 值1 值2 ... :添加值,返回添加个数;如果set中已包含元素,则返回0
srem set名 a b:删除set中的a和b
smerbers set名:显示set中的所有元素
sismerber set名 a :判断set中是否包含元素a,包含返回1;不包含返回0
sdiff set1 set2 :两个set的差集。返回set1中不包含在set2中的元素
sdiffstore set1 set2 set3:将set2和set3的差集存储到set1
sinter set1 set2:两个set的交集。返回set1和set2中都有的元素
sinterstore set1 set2 set3:将set2和set3的交集存储到set1
sunion set1 set2:两个set的并集。返回set1和set2中的所有元素(重复元素只返回一次)
sunionstore set1 set2 set3:将set2和set3的并集存储到set1
scard set:返回set的大小
srandmember set:随机返回set中的一个元素
查看全部 -
hash常用的操作命令:
hset map名 键 值 ==》设置map的键值
hget map名 键 --> 值 ==》获取值
hmset:对map一次设置多个键值对
hmget:一次获得多个键的值
hgetall:获得map的键和值
hdel:删除map的键,可以一次删除多个
del:删除整个map
hincrby map名 键 增加的数a ==》键对应的值增加a,返回增加后的值
hexists map名 键 ==》存在返回1,不存在返回0
hlen map名==》返回map中有几个键
hkeys map名==》返回map中所有键的名字
hvals map名 ==》 返回map中所有的值
查看全部 -
连接池方式连接使用jedis
查看全部 -
jedis需要释放资源,jedis.close();
查看全部 -
reids持久化方式:RDB方式,AOF方式,不持久化
查看全部 -
multi-->开启事务
exec-->commit
discard-->rollback
查看全部 -
redis应用场景:
缓存(主要的应用场景用于数据的查询,聊天式的在线好友列表等) ,
任务队列(秒杀,抢购等),
网站访问统计,
数据过期处理(精确到毫秒),
应用的排行榜,
分布式集群架构中的session分离
查看全部
举报