【Redis】Redis7学习笔记

系列文章目录

【Redis】Redis十大类型

【Redis】Redis持久化

【Redis】事务

【Redis】管道

【Redis】发布/订阅(Pub/Sub)

【Redis】复制(Replica)

【Redis】哨兵(sentinel)

【Redis】集群


Redis【Remote Dictionary Server(远程字典服务器)】是用C语言开发的一个基于内存的、开源的高键值对(key value)数据库

Redis通过提供多种键值数据类型来适应不同场景下的存储需求

目前Redis支持的键值数据类型如下:字符串类型String、哈希类型hash、列表类型list、集合类型set、有序集合类型sortedset

Redis可以缓存数据的计算结果、页面内容、数据库查询结果等,通过提高数据访问速度和响应速度,提升系统性能和用户体验。

Redis的数据操作主要在内存上,而Mysql主要在磁盘中。


NoSQL与传统数据库

NoSQL

NoSQL数据库是指非关系型数据库设计目标是 解决传统关系型数据库在大规模数据存储高并发读写场景下的性能瓶颈和扩展性问题。

与传统关系型数据库不同,NoSQL数据库不需要预先定义表结构,可以灵活地存储各种类型的数据,如键值对、文档、列族、图形等。

NoSQL数据库的特点包括:

  • 灵活的数据模型:NoSQL数据库可以存储非结构化、半结构化和结构化的数据,适用于各种数据类型和数据模型的存储需求。
  • 高可扩展性:NoSQL数据库可以通过水平扩展来处理大规模数据和高并发读写的需求,可以在集群中添加更多的节点来提高性能和容量。
  • 高性能:NoSQL数据库通过优化数据存储和查询算法,提供高速的数据读写和查询性能。
  • 分布式架构:NoSQL数据库采用分布式架构,数据可以分布在多个节点上,提高数据的可用性和容错性。
  • 弱一致性:NoSQL数据库通常采用最终一致性的策略,即在数据更新后,不保证立即在所有节点上一致,而是在一段时间内达到一致状态。

与传统关系型数据库的区别

与传统关系型数据库相比,NoSQL数据库有以下几个区别:

  • 数据模型:传统关系型数据库需要预先定义表结构,并且每条记录都需要遵循表结构的约束。而NoSQL数据库可以灵活地存储各种类型的数据,不需要预先定义表结构,可以根据实际需求动态调整数据模型。
  • 扩展性:传统关系型数据库在面对大规模数据和高并发读写时,扩展性有限。通常只能通过垂直扩展增加硬件资源来提高性能。而NoSQL数据库可以通过水平扩展来处理大规模数据和高并发读写,可以在集群中添加更多的节点来提高性能和容量。
  • 数据一致性:传统关系型数据库追求强一致性,即在数据更新后,立即在所有节点上达到一致状态。而NoSQL数据库通常采用最终一致性的策略,即在一段时间内达到一致状态,可以容忍一定的数据不一致性。
  • 查询能力:传统关系型数据库提供了丰富的查询操作和聚合函数,可以进行复杂的数据查询和分析。而NoSQL数据库的查询能力相对较弱,通常只支持基本的查询操作。
相关推荐
诸葛悠闲1 小时前
XCP协议在以太网上实现的配置
学习
遇印记3 小时前
大二java学习笔记:二维数组
java·笔记·学习
爱吃甜品的糯米团子3 小时前
Linux 学习笔记之进程管理、网络基础与常用软件安装
linux·网络·学习
bnsarocket4 小时前
Verilog和FPGA的自学笔记6——计数器(D触发器同步+异步方案)
笔记·fpga开发·verilog·自学·硬件编程
Purple Coder4 小时前
面试-上海电力大学研一的学习经验
学习
LK_075 小时前
【Open3D】Ch.3:顶点法向量估计 | Python
开发语言·笔记·python
Jabes.yang5 小时前
Java求职面试: 互联网医疗场景中的缓存技术与监控运维应用
java·redis·spring security·grafana·prometheus·oauth2·互联网医疗
饮浊酒6 小时前
Python学习-----小游戏之人生重开模拟器(普通版)
python·学习·游戏程序
li星野6 小时前
打工人日报#20251011
笔记·程序人生·fpga开发·学习方法
摇滚侠6 小时前
Spring Boot 3零基础教程,yml配置文件,笔记13
spring boot·redis·笔记