Redis

本文介绍了NoSQL数据库Redis,包括其起源、特点和主要数据结构(如String、Hash、List、Set和SortedSet),以及通用命令如DEL、EXISTS和EXPIRE。Redis以其内存存储、快速响应和多种数据类型而闻名。
摘要由CSDN通过智能技术生成

目录

认识NoSQL

认识Redis

Redis数据结构介绍

Redis通用命令

String类型

Hash类型

List类型

Set类型

SortedSet类型


认识NoSQL

NoSql可以翻译做Not Only Sql(不仅仅是SQL),或者是No Sql(非Sql的)数据库。是相对于传统关系型数据库而言,有很大差异的一种特殊的数据库,因此也称之为非关系型数据库

认识Redis

Redis诞生于2009年,全称Remote Dictionary Server,远程词典服务器,是一个基于内存的键值型NoSQL数据库.

特征

  • 键值(key-value)型,value支持多种不同数据结构,功能丰富

  • 单线程,每个命令具备原子性

  • 低延迟,速度快(基于内存、IO多路复用、良好的编码)

  • 支持数据持久化

  • 支持主从集群、分片集群

  • 支持多语言客户端

Redis数据结构介绍

Redis是一个key-value的数据库,key一般是String类型,不过value的类型多种多样

Redis通用命令

通用指令是部分数据类型的,都可以使用的指令,常见的有:

  • KEYS:查看符合模板的所有key

  • DEL:删除一个指定的key

  • EXISTS:判断key是否存在

  • EXPIRE:给一个key设置有效期,有效期到期时该key会被自动删除

  • TTL:查看一个KEY的剩余有效期

通过help [command] 可以查看一个命令的具体用法,例如:

# 查看keys命令的帮助消息:
127.0.0.1:6379> help keys
​
KEYS pattern
summary: Find all keys matching the given pattern
since: 1.0.0
group: generic

String类型

String类型,也就是字符串类型,是Redis中最简单的存储类型

其value是字符串,不过根据字符串的格式不同,又可以分为3类:

  • string:普通字符串

  • int:整数类型,可以做自增自减操作

  • float:浮点类型,可以做自增自减操作

不管是哪种形式,底层都是字节数组形式存储,只不过是编码方式不同.字符串类型最大空间不能超过512MB

Hash类型

Hash类型,也叫散列,其value是一个无序字典,类似Java中的HashMap结构.

String结构是将对象序列化为JSON字符串后存储,当需要修改对象某个字段时很不方便

Hash结构可以将对象中的每个字段独立存储,可以针对单个字段做CRUD

List类型

Redis中的List类型与Java中的LinkedList类似,可以看做是一个双向链表结构.既可以支持正向检索,也可以支持反向检索

特征

  • 有序

  • 元素可以重复

  • 插入和删除快

  • 查询速度一般

常用来存储一个有序数据,例如:朋友圈点赞列表,评论列表等

Set类型

Redis的Set结构与Java中的HashSet类型,可以看做是一个value为null的HashMap.因为也是一个Hash表,因此具备与HashSet类型的特征:

  • 无序

  • 元素不可重复

  • 查找快

  • 支持交集,并集,差集等功能

SortedSet类型

Redis的SortedSet是一个可排序的set集合,与Java中的TreeSet有些类型,但底层数据结构差别很大.SortedSet中的每一个元素都带有一个score属性,可以基于score属性对元素排序,底层的实现是一个跳表(SkipList)加hash表.

特征

  • 可排序

  • 元素不重复

  • 查询速度快

因为有可排序功能,经常被用来实现排行榜的功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

重开之sre

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值