Redis的基本知识01

1什么是Redis

Redis是一个基于内存的,使用C语言开发的 key-value的 nosql 的数据库

nosql:1 没有sql ,不支持sql
2 不仅仅只有sql(不做复杂查询,做简单查询)

Redis运用到哪些场景

1 对数据高并发的读写(一定量)
2 对数据高可扩展性能
3 速度够快,能够快速的存储数据

详细具体方面
1 取最新N个数据的 操作 (比如获取订单的前10个)
2 取Top N操作(比如获取交易金额最大的5个)
3 需要精准设定过期的场景(客户租车,这段时间需要,过了这段时间就不需要了)
4 计数器应用(计算多少个人)
5Pub/Sub构建实时系统
6缓存数据(缓存的是热数据)
7构建队列系统(yarn的三种调度器)

不实用的场景
需要事务支持
基于sql的结构化查询存储,处理复杂关系,需要急需查询

热数据: 经常被使用到的数据,访问频繁较高的数据为热数据
口袋 ,书包(经常用到的东西装起来)

Nosql 的举例

1 mencache 比较早的数据库,不支持持久化,目前使用的很少
2 redis 覆盖了mencache几乎所有的功能,支持数据持久化,支持多种结构化的数据
3 mongoDB 也是key-value模式, 对value进行了很多优化,在部分场景中可以取代关系型数据库
4 hbase 海量数据,精准查询,快速返回


Redis 数据库的特点
1 高效性 : 读的速度110000次/s, 写的速度是81000 次/s
2 原子性: Redis的所有操作都是原子性,不能在细化
3支持多种数据结构: string (字符串) list(列表) hash(哈希),set(集合)
4 稳定性强: 支持数据持久化,支持主从结构的数据备份
5 支持数据有效期,支持订阅


Redis的安装

1 上传Redis压缩包
cd /export/softwares
2 解压Redis
cd /export/softwares
tar -zxvf redis-3.2.8.tar.gz -C …/servers/
3 node01执行以下命令安装C程序运行环境
yum -y install gcc-c++
node01执行以下命令在线安装tcl
yum -y install tcl
4 Redis 编译(因为是C语言编写的)
cd /export/servers/redis-3.2.8/
make && make install
5 修改配置文件
5.1 创建日志存放的路径和数据持久化的路径
cd /export/servers/redis-3.2.8/
mkdir -p /export/servers/redis-3.2.8/logs
mkdir -p /export/servers/redis-3.2.8/redisdata
vim redis.conf

bind node01    		# redis绑定到哪个节点上
daemonize yes       # 改为yes 可以在后台运行
pidfile /var/run/redis_6379.pid    # 这个不需要改,每个任务在进行时,都有进程号,写到这个文件里
logfile "/export/servers/redis-3.2.8/logs/redis.log"  # 必须是文件,不能是目录
dir /export/servers/redis-3.2.8/redisdata

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.2启动redis
在这里插入图片描述
成功
在这里插入图片描述

进入客户端
在这里插入图片描述


Redis中数据类型

Redis 文档
https://www.runoob.com/redis/redis-data-types.html

String

1 set key value 设置一个字符串
2 mset key1 value1 key2 value2 一次设置多个 key value
3 setex key x(多少秒) value(值) 设置一个变量的生命周期
4 setnx key value 当变量不存在时,可以设置

1 get key 查询字符串的值
2 getrange key start end 查询字符串部分(开始索引和结束索引)
3 mget key1 key2 key3 查询多个key 的value值
4 strlen key 查询字符串的长度


1 set key value 对已存在的key的value的值进行修改(更新)
2 append key value 对已存在的变量进行追加


del key 对已存在的变量进行删除

其他
1 getset key value(New) 先获取然后在修改
2 setrange key offer(偏移量开始改的位置) xx (修改几个替换几个) 输入的内容多于里面的就全部替换

1 incr key 累加 1
2 incrby key N 累加N (N是多少就加多少)
3 incrbyfloat key 累加小数
4 decr key 减一
decrby 减N(N是多少就减多少)


hash


1 hest key1 key2 value 设置一个key value
2 hsetnx key1 key2 value2 这个变量不存在时可以添加
3 hmset key1 key2 value2 key3 value3 key4 value4


hget key1 key2 获取一个变量的值
hexists key1 key2 查看这个是否存在
hgetall key 查看这个变量的所有值
hkeys key(最外) 查询这个变量所有的key
hlen key 查询key的长度
hmget key1 keyN 查询 某一个key的值


hset key1 key2 value(更新的值) 修改value的值

del key 删除key 这个变量
其他
hincrby key1 key2 N 累加这个值
hincrbyfloat key1 key2 n(小数) 累加小数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值