当前位置: 首页 > news >正文

初识redis(String,Hash,List,Set,SortedSet)

认识NoSql

sql关系型数据库 nosql非关系型数据库

nosql具有非结构化,Key/Value,Document,Draph

无关联的,非sql,BASE(原子性,持久性,一致性,隔离性)

认识redis

特征:

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

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

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

支持数据持久化

支持主从集群、分片集群

支持多语言客户端

Redis数据结构介绍

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

String类型

KEYS:查看符合模板的所有key,不建议在生产环境设备上使用

DEL:删除一个指定的key

EXISTS:判断key是否存在

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

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

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

Key的结构

String类型三种格式:

1.字符串

2.int

3.float

Redis的key的格式:

【项目名】:【业务名】:【类型】:【id】

Hash类型

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

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

List类型

Redistribution中的List类型与Java中的Linked List类似,可以看作是一个双向链表结构,既可以支持正向检索和也可以支持反向检索。

特征也与Linked List类似:

1.有序

2.元素可以重复

3.插入和删除块

4.查询速度一般

Set类型

Redis的set结构与Java中的Hash Set类型,可以看做是一个value为null的HashMap。因为也是一个hash表,因此具备与Hash Set类似的特性:

1.无序

2.元素不可重复

3.查找块

4.支持交集,并集,差集等功能

SortedSet类型

Redis的Sortedset是一个可排序的set集合,与lava中的Treeset有些类似,但底层数据结构却差别很大。Sortedset中的每一个元素都带有一个score属性,可以基于score属性对元素排序,底层的实现是一个跳表(SkipList)加 hash表。Sortedset具备下列特性:

可排序

元素不重复

查询速度快

因为Sortedset的可排序特性,经常被用来实现排行榜这样的功能。

http://www.lryc.cn/news/434205.html

相关文章:

  • Ton与ETH的一些独特的区别
  • C++ | Leetcode C++题解之第396题旋转图像
  • 前向渲染路径
  • Python画笔案例-040 绘制五角星顶圆
  • 【区块链 + 人才服务】可信教育区块链治理系统 | FISCO BCOS应用案例
  • 期货量化-群体优化算法:混合蛙跳算法(SFL)
  • tensorflow-线性回归python入门
  • VSCode学习笔记
  • 【Canvas与艺术】菊花孔雀螺旋
  • circuitjs 普通开关和按钮开关
  • 客户端绑定本地端口与服务器建立连接的详细实现
  • C++ std::bind函数用法
  • Caffenie配合Redis做两级缓存
  • MATLAB实现PID参数自动整定
  • UE5学习笔记21-武器的射击功能
  • Mamba模型学习笔记
  • android kotlin 基础复习 继承 inherit
  • 读软件设计的要素06概念完整性
  • Java 每日一刊(第2期):搭建开发环境
  • 探索EasyCVR与AI技术深度融合:视频汇聚平台的新增长点
  • IBM中国研发部调整:全球化与本土化的新平衡
  • C++入门基础篇
  • Qt QListWidget 代码范例,以及Qt 天坑:setStyleSheet失效问题
  • Unity AnimationClip详解(1)
  • 在这12种场景下会使Spring事务失效--注意防范
  • SOPC:Nios II Processor -> Vectors
  • golang学习笔记11——Go 语言的并发与同步实现详解
  • 关于汽车加油是加200还是加满的思考
  • C# 去掉字符串最后一个字符的5种方法
  • [Redis] Redis中的String类型