【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数据库的查询能力相对较弱,通常只支持基本的查询操作。
相关推荐
微露清风35 分钟前
系统性学习Linux-第二讲-基础开发工具
linux·运维·学习
不会代码的小猴1 小时前
Linux环境编程第六天笔记--system-V IPC
linux·笔记
阳光九叶草LXGZXJ1 小时前
达梦数据库-学习-48-DmDrs控制台命令(同步之Manager、CPT模块)
linux·运维·数据库·sql·学习
乌恩大侠1 小时前
【笔记】USRP 5G 和 6G 参考架构
笔记·5g
biuyyyxxx2 小时前
Python自动化办公学习笔记(一) 工具安装&教程
笔记·python·学习·自动化
舟舟亢亢3 小时前
Java集合笔记总结
java·笔记
丝斯20113 小时前
AI学习笔记整理(66)——多模态大模型MOE-LLAVA
人工智能·笔记·学习
军军君014 小时前
Three.js基础功能学习十三:太阳系实例上
前端·javascript·vue.js·学习·3d·前端框架·three
bylander4 小时前
【AI学习】TM Forum《Autonomous Networks Implementation Guide》快速理解
人工智能·学习·智能体·自动驾驶网络
kida_yuan5 小时前
【Linux】运维实战笔记 — 我常用的方法与命令
linux·运维·笔记