打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Python学习之Redis交互详解

前言

最近在学习scrapy redis,顺便复习了redis。

本篇为redis篇,包含实例演示,主从服务配置,python交互等内容。

nosql与redis介绍

nosql数据库:

不支持SQL语法

存储结构跟传统关系型数据库中的那种关系表完全不同,nosql中存储的数据都是KV形式

NoSQL的世界中没有一种通用的语言,每种nosql数据库都有自己的api和语法,以及擅长的业务场景

NoSQL中的产品种类相当多:Mongodb,Redis,Hbase hadoop,Cassandra hadoop等等。

redi数据库是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

安装与启动

windows:

安装redis:

安装redis管理客户端:

linux:

安装:

连接redis:

重要配置项说明:

启动redis:

停止redis:

重启redis:

加载指定的redis配置启动:

查看redis进程:

杀死进程:

redis数据结构与操作

redis数据结构

redis是key-value的数据结构,每条数据都是一个键值对

键的类型是字符串,且键不能重复

值的类型分为五种:字符串strin,哈希hash,列表list,集合set,有序集合zset

redis数据操作redis键命令

redis键命令对所有数据类型通用

查找键:

查看全部键:

判断键是否存在:

查看键对应的值的类型:

删除键对应的值的类型:

设置键的过期时间:

查看键的有效时间:

string类型相关操作

字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等。在Redis中字符串类型的Value最多可以容纳的数据长度是512M。

新增与更新

设置键值(当键存在即为更新值):

举个栗子:

设置键值以及过期时间:

举个栗子:

设置多个键值:

举个栗子:

向现有的值追加其他值:

举个栗子:

查看

查看键值:

举个栗子:

查看多个键的值:

举个栗子:

删除

删除键:

hash哈希类型相关操作

hash类型的值的类型为string

新增与修改

设置单个值:

举个栗子:

设置多个值:

举个栗子:

获取

获取单个键的所有属性:

举个栗子:

获取单个属性的值:

举个栗子:

获取多个属性的值:

举个栗子:

获取所有属性的值:

举个栗子:

删除

删除单个键所有属性和值:

删除键的属性(对应的值也会被清空):

举个栗子:

list列表类型相关操作

list类型的值为string,值按照插入顺序排序

新增

在list左边插入数据:

举个栗子:

在list右边插入数据:

举个栗子:

在指定元素前或后插入数据:

举个栗子:

获取列表元素

获取列表指定范围内的值:

注意:这里的列表和python中的列表索引方式相同,从左往右以0开始,索引支持负数

举个栗子:

修改

设置指定索引位置的元素:

举个栗子:

删除

删除指定元素:

举个栗子:

set集合类型相关操作

无序集合

元素为string类型

元素具有唯一性,不重复

说明:对于集合没有修改操作

新增

添加元素:

举个栗子:

获取

获取所有值:

举个栗子:

删除

删除指定的元素:

举个栗子:

zset有序集合相关操作

sorted set,有序集合

元素为string类型

元素具有唯一性,不重复

每个元素都会关联一个double类型的score,表示权重,通过权重将元素从小到大排序

说明:没有修改操作

新增

新增多个元素:

举个栗子:

查看

这里的有序集合和列表相同都有索引值

查看有序集合的值:

举个栗子:

查看集合权重在指定范围内的值:

举个栗子:

返回成员member的score值:

举个栗子:

删除

删除指定元素:

举个栗子:

删除权重在指定范围的元素:

举个栗子:

python与redis交互

安装与导入

安装:

导入模块:

创建StrictRedis

通过init创建对象,指定参数host、port与指定的服务器和端口连接,host默认为localhost,port默认为6379,db默认为0,默认没有密码。

方法与操作string实例(其他类型操作类似)

这里不同类型拥有的方法和上面redis中讲解的方法相同,这里不再赘述。

举个栗子:

redis搭建主从服务(ubuntu)

什么是主从服务

一个master可以拥有多个slave,一个slave可以拥有多个slave,如此下去,形成了多级服务器集群架构

master用来写数据,slave用来读数据,经统计:网站的读写比率是10:1

通过主从配置可以实现读写分离

master和slave都是一个redis实例(redis服务)

配置主

配置从

查看主从关系

主从测试

尾言

以上就是关于redis的一些用法,重点部分还是各个数据类型的操作,一定要照着敲一次才能记得住哦。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
高并发大容量NoSQL解决方案探索
为什么要使用redis数据库?
狂神说Java——Redis最全教程
redis总结
分享Redis常见面试题
Linux大棚版redis入门教程 | Linux大棚
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服