Redis 非关系型数据库

目录

 

管理

Redis的数据存储

String

List

Hash

set

Sorted set(ZSet)

Python与 Redis交互


简介

远程字典服务器,是开源协议的NoSQL技术,是基于单线程的内存数据存储结构,支持 Java, Python , Lua等多种语言调用API调用,可以作为数据库, 缓存服务器使用。

Redis具有多种优势,在高速web开发等领域具有广泛前景

Redis使用NoSQL的 键值对存储方式,支持字符串,哈希表,列表,集合等存储结构

支持内存数据的磁盘持久化存储,支持主从模式的数据备份

Redis运行在内存中,支持多种数据结构的高速读/写操作,性能优越,远超数据库中开源数据结构存储技术

管理

安装目录

redis-cli

测试是否接通Ping 应答PONG

查找所有符合给定模式pattern的key Keys

Redis默认有16个数据库,编号0~15.select编号表示切换到对应 select 1/2/3...

当前数据库的记录数 dbsize

删除当前数据库记录 flushdb

删除所有数据库记录 flushall

查看某个键下数据的类型 type

Redis的数据存储

Redis中提供了七种数据类型,分别是String, Hash , List, Set, ZSet, HyperLogLog、BitMap。

String

key对应的Value是一个字符串类型

set

set key value #设置键值对,如果键存在,则修改。不存在为新建

get

get key #返回键名对应的值,如果不存在返回null

append

append key value #追加内容

setrange

setrange key offset value #修改字符串内容,从偏移offset开始,用value替换

*在使用 setappend命令时,如果key不存在则创建,否则替换Key对应的Value值

List

List是 Redis 的链表结构(列表结构,有序可重复),用于存储有序元素集合,可以从左,右端入栈,出栈,索引。

LPush 或 RPush

LPush listname v1 v2 #从左端添加元素

LRange

Lrange listname start end  #读取指定范围的数据

LDrop或RDrop

LDrop listname #从左到右删除第一个元素

Llen

Llen listname #列表长度

Lindex

Lindex listname num #返回指定位置的元素

lrem

#删除链表中指定个数个Value(若count为正数,则从链表的左侧开始删除指定个数个Value,若count为负数,则从链表的右侧开始删除指定个数个Value,若count为0,则删除链表中所有指定的Value)
lrem key count value

*当使用lpush、rpush命令时,如果Key不存在则创建,否则往Key对应的链表中追加元素。

Hash

以哈希结构(键值对)存储数据,每个哈希值类型中都包含若干个键值对(属性名与属性值)

Hset 或HMset

#设置一个或者多个字典的值
Hset dicname key value
HMset dicname k1 v1 k2 v2

Hget或Hgetall

#获取某个键的值或者获取全部字典的内容
hget dicname key

Hdel

hdel dicname key #按键名删除内容

*在使用hset、hmset命令时,如果key不存在则创建,否则往key对应得Hash中添加元素,如果属性名相同则替换属性值。

set

key对应得value是一个集合类型(无序不重复

sadd

Sadd setname v1 v2 v3 #添加数据到集合

Scard

scard setname #查看集合元素的个数

Smembers

Smembers setname #查看集合内的元素

srem

srem setname v1 #删除集合内一个或多个值

*在使用sadd命令时,如果Key不存在则创建,否则往Key对应的Set中追加元素。

Sorted set(ZSet)

有序集合,不允许有重复值,每个值有一个权重(分数可以相同,value不能相同)

Zadd

Zadd setname s1 v1 s2 v2

Zcard

#查看集合元素个数
Zcard setname

Zrange

zrange setname start end #显示有序集合范围的元素

zrem

zrem setname v1 v2 #移除有序集合中的一个或多个

Python与 Redis交互

安装

pip install redis

使用

#创建连接池
pool=redis.ConnectionPool(host='127.0.0.1',port=6379,db=1,decode_response=True)
#创建连接对象
cli=redis.Redis(connection_pool=pool)
#写入字符串类型
res=cli.set('name','Richard')
#读取字符串类型
res=cli.get('name')

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值