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

Redis 5种常用数据类型

目录

Redis简介

1.字符串 string

2.哈希 hash

3.列表 list

4.集合 set

5.有序集合 sorted set / zset


Redis简介

Redis,全称Remote Dictionary Server,是一个开源的、内存中的数据结构存储系统。它可以用作数据库、缓存和消息中间件,支持多种类型的数据结构,如字符串(string)、哈希(Hash)、列表(list)、集合(sets)、有序集合(sorted sets)等类型数据间的操作。由于其出色的性能表现,Redis已成为许多大型互联网公司和开源项目的重要组件。

起源

Redis的起源可以追溯到2008年,当时意大利的一家创业公司Merzia为了优化其基于MySQL的网站实时统计系统LLOOGG的性能,创始人Salvatore Sanfilippo决定亲自为该系统打造一个高效的数据库。2009年,Redis诞生,并在同年被Salvatore Sanfilippo开源发布。Redis以其高性能、丰富的数据结构和灵活的用法迅速获得了业界的广泛认可。

功能

  1. 高性能:Redis基于内存存储数据,读写速度极快,每秒可以处理超过10万次读写操作,是已知性能最快的Key-Value DB。同时,Redis支持多种数据结构和丰富的操作,能够满足各种复杂的数据存储和访问需求。
  2. 持久化:Redis支持两种持久化方式,AOF(Append Only File)和RDB(Redis DataBase),可以将内存中的数据保存到磁盘上,保证数据的安全性。
  3. 主从复制:Redis支持主从同步,数据可以从主服务器向任意数量的从服务器上同步,从而实现数据的备份和读写分离,提高系统的可用性和扩展性。
  4. 事务:Redis支持事务操作,确保多个操作在执行过程中的原子性,避免数据的不一致性。
  5. 其他功能:Redis还支持发布/订阅、Lua脚本、LRU驱动事件、多种集群方案等功能,为开发者提供了丰富的应用场景和灵活的使用方法。

redis存储的是key-value结构的数据,其中key是字符串类型,value有5种常用数据类型,本次将为大家详细介绍这5种常用数据类型。

1.字符串 string

普通字符串,和Java里面的字符串一样

2.哈希 hash

也叫散列,类似于Java中hashmap结构。

3.列表 list

按照插入顺序排序,可以有重复元素,类似于Java中的linkedList

4.集合 set

无序集合,没有重复元素,类似于Java中hashSet

5.有序集合 sorted set / zset

有序集合原理:集合中每个元素其实都关联着一个分数(score),集合中的元素根据分数升序排序,没有重复元素。(适合用于各种‘排行榜’功能)

相关文章:

  • SaaS产品运营|一文讲清楚为什么ToB产品更适合采用PLG模式?
  • PFA烧杯带把手带刻度1000ml3000mlPFA氟树脂温度范围-270~250℃
  • Java并发编程深度解析:构建高并发应用的实践与探究
  • 在Qt编写的exe或者dll中设置版本号
  • 人工智能历史与现状
  • 自旋锁(spin lock)
  • RabbitMQ消息的可靠传输和防止消息丢失
  • vscode 调试
  • Redis之线程IO模型
  • Redisson实现分布式锁
  • C语言 -- 宏的变长参数定义
  • kotlin lambda 表达式的原理、语法和详细用法
  • 专业纸箱厂:品质之选
  • JS 实现Date日期格式的本地化
  • Halcon 多相机统一坐标系
  • 【刷算法】从上往下打印二叉树
  • js递归,无限分级树形折叠菜单
  • RxJS: 简单入门
  • Spark in action on Kubernetes - Playground搭建与架构浅析
  • Spring Cloud(3) - 服务治理: Spring Cloud Eureka
  • 从零开始的无人驾驶 1
  • 关于Flux,Vuex,Redux的思考
  • 规范化安全开发 KOA 手脚架
  • 好的网址,关于.net 4.0 ,vs 2010
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 看图轻松理解数据结构与算法系列(基于数组的栈)
  • 力扣(LeetCode)965
  • 使用parted解决大于2T的磁盘分区
  • 一个项目push到多个远程Git仓库
  • 异步
  • 用jquery写贪吃蛇
  • 追踪解析 FutureTask 源码
  • 从如何停掉 Promise 链说起
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​比特币大跌的 2 个原因
  • ​学习一下,什么是预包装食品?​
  • #include<初见C语言之指针(5)>
  • #我与Java虚拟机的故事#连载02:“小蓝”陪伴的日日夜夜
  • (cljs/run-at (JSVM. :browser) 搭建刚好可用的开发环境!)
  • (floyd+补集) poj 3275
  • (Matalb时序预测)WOA-BP鲸鱼算法优化BP神经网络的多维时序回归预测
  • (WSI分类)WSI分类文献小综述 2024
  • (二)windows配置JDK环境
  • (附源码)计算机毕业设计SSM疫情下的学生出入管理系统
  • (六)c52学习之旅-独立按键
  • (南京观海微电子)——COF介绍
  • (小白学Java)Java简介和基本配置
  • (已解决)什么是vue导航守卫
  • (转)C语言家族扩展收藏 (转)C语言家族扩展
  • .htaccess配置重写url引擎
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上
  • .NET gRPC 和RESTful简单对比
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .NET 将混合了多个不同平台(Windows Mac Linux)的文件 目录的路径格式化成同一个平台下的路径
  • .NET 中 GetProcess 相关方法的性能