栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

redis非关系型数据库

redis非关系型数据库

文章目录
    • 关系型数据库和非关系型的数据库比较:
    • redis的特点
    • redis 的安装
    • redis 五种数据类型操作
      • 字符串 string
        • 常见的key操作
      • 哈希 (hash)
      • 列表
      • 集合
      • 有序集合
    • python中使用数据库

关系型数据库和非关系型的数据库比较:

redis的特点
  1. 速度快
  2. 原子性, 支持事务
  3. 丰富的特性:可用于缓存,消息,按key设置过期时间,过期后将会自动删除

redis 的安装






redis 五种数据类型操作 字符串 string
添加 		获得
set k v   	get k v          
默认是字符串

添加多条数据
mset k1 v1 k2 v2

获得多条

mget k1 k2

追加
append k v


设置有效时间
setex k 时长(s) v

实例:

常见的key操作
查看所有的键
keys *

8. 查看某个键是否存在
EXISTS k

9. 查看某个键的有效时长(s), 无限为 -1, 不存在为 -2
ttl k

10. 查看数据类型
type k

11. 删除一个键
del k

12. 设置某存在的键的有效时长(s)
EXPIRE k 时长(s)

13. 删除所有键
FLUSHALL
127.0.0.1:6379> mset name laowang age 10
OK
127.0.0.1:6379> keys *
1) "age"
2) "s"
3) "z"
4) "name"
5) "people"
127.0.0.1:6379> EXISTS name
(integer) 1
127.0.0.1:6379> ttl name
(integer) -1
127.0.0.1:6379>  ttl hwrfw
(integer) -2
127.0.0.1:6379> setex name 10 laowang
OK
127.0.0.1:6379> ttl naem
(integer) -2
127.0.0.1:6379> setex name 10 laowang
OK
127.0.0.1:6379> ttl naem
(integer) -2
127.0.0.1:6379> setex name 10 laowang
OK
127.0.0.1:6379> ttl name
(integer) 2
127.0.0.1:6379> type age
string
127.0.0.1:6379> FLUSHALL
OK
127.0.0.1:6379> get name
(nil)
哈希 (hash)
hset 键名 k v
hmset 键名 k1 v1 k2 v2 ... kn vn

15. 获取哈希
hget 键名 k
hmget 键名 k1 k2 ... kn 

16. 查看指定键所有属性 / 值
hkeys 键名
hvals 键名

17. 删除指定键对应的某个 / 多个属性
hdel 键名 k
hdel 键名 k1 k2 ... kn
127.0.0.1:6379> hmset a name laowang age 19
OK
127.0.0.1:6379> hmget a name age
1) "laowang"
2) "19"
127.0.0.1:6379> hkeys a
1) "name"
2) "age"
127.0.0.1:6379> hvals a
1) "laowang"
2) "19"
127.0.0.1:6379> hdel a name
(integer) 1
列表
18. 创建 / 获取列表 起始下标为0, 负数代表从后往前, -1代表最后一个元素
lpush 键名 v1 v2 ... vn
rpush 键名 v1 v2 ... vn
lrange 键名 start stop

19. 删除列表中的元素, count > 0 表示从前往后删除, count < 0 表示从后往前删除, count = 0 表示全部删除
      count 的绝对值表示删除几个值
lrem 键名 count v

20. 修改列表中的元素
lset 键名 index v

21. 插入列表中的元素
linsert 键名 after / before v
127.0.0.1:6379> lpush b 1 2 3
(integer) 3
127.0.0.1:6379> rpush b 4 5 6
(integer) 6
127.0.0.1:6379> lrange b 0 -1
1) "3"
2) "2"
3) "1"
4) "4"
5) "5"
6) "6"
127.0.0.1:6379> lrem b 1 3
(integer) 1
127.0.0.1:6379> lrange b 0 -1
1) "2"
2) "1"
3) "4"
4) "5"
5) "6"
127.0.0.1:6379> rpush b 4 5 6 2 1
(integer) 10
127.0.0.1:6379> lrem b 0 4
(integer) 2
127.0.0.1:6379> lrange b 0 -1
1) "2"
2) "1"
3) "5"
4) "6"
5) "5"
6) "6"
7) "2"
8) "1"

集合
sadd 键名 v1 v2 ... vn

23. 查看一个特定集合的所有元素
smembers 键名

24. 移除一个特定集合中的特定元素
srem 键名 v

25. 向一个特定集合中追加元素
sadd 键名 v1 v2 ... vn
有序集合
zadd 键名 权重1 v1 权重2 v2 ... 权重n vn

27. 查看一个有序列表里某元素的权重
zscore 键名 v

28. 查看一个有序列表里index范围内的值
zrange 键名 start stop

29. 查看一个有序列表里指定范围权重内的值
zrangebyscore 键名 权重开始 权重结束

30. 删除指定键
zrem 键名 v

31. 删除指定权重范围内的值
zremrangebyscore 键名 权重开始 权重结束
python中使用数据库
导包
from redis import StrictRedis

实例化
sr=StrictRedis()
语法
sr.set("name","laowang")
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/279968.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号