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

初识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.kler.cn/a/292145.html

相关文章:

  • Swift的可选绑定(Optional binding)
  • 数据研发基础 | 什么是流批一体
  • Ubuntu安装ollama,并运行ollama和通义千问,使用gradio做界面
  • C++:基于红黑树封装map和set
  • uniapp h5地址前端重定向跳转
  • Spring Boot3 实战案例合集上线了
  • JVM 的类加载机制和双亲委派机制
  • 【Rust光年纪】极致性能体验:数据管道实现、虚拟化列表和网格布局美化完全攻略
  • 嵌入式day39
  • 828华为云征文|基于Flexus云服务器X实例的应用场景-定时给微信群中推送新闻简报
  • 【Python】企业排名、地域分布与词云分析可视化
  • 23种设计模式(四) —— 手写实现 Factory Method 模式 (将具体交给子类)
  • charles使用ssl证书抓包https请求失败解决方案
  • ffmpeg音视频开发从入门到精通——常用结构体介绍(一)
  • Node.js sqlite3:Statement对象详解
  • Ubuntu下pdf操作
  • 【免费分享】高斯过程回归(Gaussian process regression)原理详解及MATLAB代码实战
  • [rk3399 android11]关闭声卡
  • 【docker】docker 简介
  • Windows用户取消共享文件夹密码方法(Method for Windows Users to Cancel Shared Folder Password)
  • Redis 主从复制、切片集群
  • 前端框架有哪些?
  • python正则表达式大全
  • 21.新增管理员页面制作
  • 9月5日复盘日记
  • pytorch计算张量中三维向量的欧式距离