flask_redis数据库

redis数据库

1.nosql介绍

NoSQL:⼀类新出现的数据库(not only sql)

  1. 泛指⾮关系型的数据库
  2. nosql⼀般可以存储多种数据类型, 除了基本类型(数字、字符串、⽇期),还可以存储json、html等⽂件类型
  3. 数据以键值⽅式存取, 不能像关系型数据库⼀样使⽤外键建⽴表之间的关系, 不适合⽤于关系特别复杂的数据查询场
  4. 每种nosql数据库都有⾃⼰的api和语法, 不⽀持SQL语法
  5. “事务”的⽀持:sql对事务的⽀持⾮常完善,⽽nosql基本不⽀持事务
6.NoSQL中的产品种类相当多, 各有⾃⼰擅⻓的业务场景:

Mongodb
Redis
Hbase hadoop
Cassandra hadoop

2.Redis简介

  1. Redis是⼀个开源的使⽤ANSI C语⾔编写、⽀持⽹络、可基于内存亦可持久化的⽇志型、Key-Value数据库,并提
    供多种语⾔的API。从2010年3⽉15⽇起,Redis的开发⼯作由VMware主持。从2013年5⽉开始,Redis的开发由
    Pivotal赞助。
  2. Redis是 NoSQL技术阵营中的⼀员,它通过多种键值数据类型来适应不同场景下的存储需求,借助⼀些⾼层级的接
    ⼝使⽤其可以胜任,如缓存、队列系统的不同⻆⾊

2.1Redis 优势

  1. 性能极⾼ – 内存型数据库,读写速度极快
  2. 丰富的数据类型 – ⽀持存储 Strings, Lists, Hashes, Sets 及 Ordered Sets 等多种数据类型。
  3. 数据持久化 – 可以将内存数据保存到磁盘中, 并提供多种存储机制。
  4. 数据备份 – ⽀持主从模式 (master - slave) 的数据备份。
  5. 集群 – ⽀持集群, 并实现了哨兵机制。
  6. 丰富的特性 – 设置过期时间, 发布/订阅, 通知等机制。

2.2Redis应⽤场景

  1. session存储 (性能更好, ⽅便设置过期时间)
  2. 购物⻋ (以请求令牌token作为key,记录当前⽤户购物⻋中的商品及其数量)
  3. ⽹⻚缓存 (将 请求的url/返回的⽹⻚内容 作为redis的key/value进⾏缓存)

3 python交互

需要安装

pip install redis

python 交互

from redis import  Redis

rs = Redis(host='127.0.0.1',port=6379,db=0,decode_responses=True)

#操作数据库
# string常用操作命令
rs.set('name','zs')
print(rs.get('name'))

rs.mset({'name':'ls','age':18})
print(rs.mget(['name','age']))

rs.append('name','hh')
print(rs.mget(['name','age']))

# 健常用操作命令
rs.delete('name')
print(rs.exists('name'))
rs.expire('age',20)
print(rs.ttl('age'))
print(rs.type('age'))
print(rs.keys('a*'))


# hash操作命令
rs.hset('zs','name','zhangsan')
print(rs.hget('zs','name'))

rs.hmset('zs',{'name':'lisi','age':18})
print(rs.hmget('zs',['name','age']))

print(rs.keys('zs'))
print(rs.hvals('zs'))

rs.hdel('zs','age')
print(rs.keys('zs'))
print(rs.hvals('zs'))
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值