【Redis学习】:string数据类型详解

什么是NoSQL
NoSQL,即Not Only SQL,意为不仅仅是SQL,是一项全新的数据库理念,泛指非关系型的数据库、

为什么需要NoSQL
1、对数据库高并发读写的需求
2、对海量数据的高效率存储和访问的需求
3、对数据库的高扩展性和高可用性的需求

NoSQL数据库分类
1、键值存储数据库

2、列存储数据库

3、文档型数据库

4、图形数据库


NoSQL特点
1、易扩展
2、大数据量,高性能
3、灵活的数据模型
4、高可用

什么是redis
redis是用C语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止redis支持的键值对数据类型如下:
1、字符串类型
2、散列类型
3、列表类型
4、集合类型
5、有序集合类型

redis应用场景
缓存(数据查询、短连接、新闻内容、商品内容等等),使用最多
聊天室的在线好友列表
任务队列(秒杀、抢购、12306等等)
应用排行榜
网站访问统计
数据过期处理(可以精确到毫秒)
分布式集群架构中的session分离

redis数据结构
redis是一种高效的key-value的存储系统,其中value支持五种数据类型。
1、字符串(string)
2、哈希(hash)
3、字符串列表(list)
4、字符串集合(set)
5、有序字符串集合(sorted set)
key定义需要注意:
1、key不要太长,最好不要操作1024个字节,这不仅会消耗内存还会降低查找效率
2、key不要太短,如果太短会降低key的可读性
3、在项目中,key最好有一个统一的命名规范

string数据结构
字符串类型是redis中组委基础的数据存储类型,它在redis中是二进制安全的,这边意味着该类型存入和获取的数据相同。在redis中字符串类型的value最多可以容纳的数据长度是512M。

常用命令
赋值
set key value
设定key持有指定的字符串value,如果该key存在则进行覆盖操作,总是返回“OK”。


取值
get key
获取key的value,如果与该key关键的value不是string类型,redis将返回错误信息,因为get命令只能用于获取string的value,如果该key不存在,返回nil。


getset key value
先获取该key的值,再设置该key的值


删除
del key
删除指定key


数值增减
incr key
将指定的key的value原子性的递增1,如果该key不存在,其初始值为0,在incr之后其值为1,如果value的值不能转换为整型,如hello,该操作将执行失败并返回相应的错误信息


decr key
将指定的key的value原子性的递减1,如果该key不存在,其初始值为0,在decr之后其值为1,如果value的值不能转换为整型,如hello,该操作将执行失败并返回相应的错误信息。


incrby key increment
将指定的key的value原子性增加increment,如果该key不存在,其初始值为0,在incr之后其值为increment,如果value的值不能转换为整型,如hello,该操作将执行失败并返回相应的错误信息


decry key decrement
将指定的key的value原子性减少decrement,如果该key不存在,其初始值为0,在decr之后其值为decrement,如果value的值不能转换为整型,如hello,该操作将执行失败并返回相应的错误信息


append key value
拼凑字符串,如果该key存在,则在原有的value后追加该值,如果该key不存在,则重新创建一个key-value。



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值