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

【Redis学习路|第一篇】初步认识Redis

概要: 深入探讨NoSQL数据库的核心特性,对比传统关系型数据库的差异,重点介绍Redis作为内存数据库的优势与应用场景。

请添加图片描述


文章目录

    • 认识 NoSQL
      • NoSQL vs SQL 对比
        • 1️⃣ 结构化 vs 非结构化
        • 2️⃣ 关联 vs 非关联
        • 3️⃣ 查询方式对比
        • 4️⃣ 事务特性
        • 5️⃣ 存储方式
        • 6️⃣ 扩展性
    • 认识 Redis
      • Redis简介
      • 核心特征
      • Redis优势
      • 作者信息
    • Redis安装指南
    • 🎉 总结


认识 NoSQL

NoSQL(Not Only SQL): 不仅仅是SQL,是相较于传统关系型数据库而言,具有显著差异性的特殊数据库类型,因此也称为非关系型数据库

NoSQL vs SQL 对比

NoSQL相较于非关系型数据库,有着六个本质的区别

1️⃣ 结构化 vs 非结构化
特性关系型数据库NoSQL数据库
数据结构结构化数据非结构化数据
约束严格的字段约束灵活的格式支持
修改成本高(锁表、业务影响)低(灵活调整)

关系型数据库特点:

  • 创建表时有严格的约束信息
  • 字段名、数据类型必须预先定义
  • 后期修改字段成本极高

NoSQL数据库特点:

  • 支持键值型、文档型、列类型、图格式
  • 格式灵活,适应业务变化
2️⃣ 关联 vs 非关联

关系型数据库: 表与表间存在外键关联

用户表
订单表
商品表

NoSQL数据库: 无关联,通过业务逻辑维护

{"id": 1,"name": "张三","orders": [{"id": 1,"item": {"id": 10,"title": "荣耀6","price": 4999}},{"id": 2,"item": {"id": 20,"title": "小米11","price": 3999}}]
}
3️⃣ 查询方式对比

关系型数据库: 基于SQL语句

SELECT id, age FROM tb_user WHERE id = 1

NoSQL数据库: 多种查询语法

# Redis
get user:1# MongoDB
db.user.find({_id: 1})# Elasticsearch
GET http://localhost:9200/users/1
4️⃣ 事务特性

关系型数据库: 满足ACID原则

  • Atomicity(原子性):事务要么全部成功,要么全部回滚
  • Consistency(一致性):事务前后数据库状态一致
  • Isolation(隔离性):并发事务相互隔离
  • Durability(持久性):事务提交后永久保存

NoSQL数据库: 实现BASE原则

  • Basically Available(基本可用)
  • Soft state(软状态)
  • Eventually consistent(最终一致性)
5️⃣ 存储方式
特性关系型数据库NoSQL数据库
存储介质磁盘存储内存存储
IO操作大量磁盘IO内存读写
性能受磁盘限制内存速度
6️⃣ 扩展性

关系型数据库: 垂直扩展(主从模式)

  • 主从数据一致,用于数据备份
  • 受机器性能限制

NoSQL数据库: 水平扩展

  • 通过哈希计算分散存储
  • 解决内存大小限制问题

对比总结

特性SQLNoSQL
数据结构结构化非结构化
数据关联关联的无关联的
查询方式SQL查询非SQL
事务特性ACIDBASE
存储方式磁盘内存
扩展性垂直水平
使用场景1. 数据结构固定
2. 对一致性、安全性要求高
1. 数据结构不固定
2. 对性能要求高
3. 需要高并发

认识 Redis

Redis简介

Redis 诞生于2009年,全称是 Remote Dictionary Server(远程词典服务器),是一个基于内存的键值型NoSQL数据库。

核心特征

特征说明
键值型Value支持多种数据结构,功能丰富
单线程每个命令具有原子性
低延迟基于内存、IO多路复用、良好编码
持久化支持数据持久化
集群支持主从集群、分片集群
多语言支持多种编程语言客户端

Redis优势

  • 1️⃣ 极高性能:基于内存操作,响应速度极快
  • 2️⃣ 原子性:单线程模型保证操作原子性
  • 3️⃣ 丰富数据类型:String、Hash、List、Set、ZSet等
  • 4️⃣ 持久化:RDB和AOF两种持久化方式
  • 5️⃣ 分布式:支持主从复制和集群模式
  • 6️⃣ 易用性:简单易用的API接口

作者信息

  • 作者:Antirez
  • 官网:官网地址

Redis安装指南

Redis超详细安装教程


🎉 总结

通过本文的学习,您已经掌握了:

  • ✅ NoSQL数据库的核心概念和特性
  • ✅ 关系型数据库与NoSQL的全面对比
  • ✅ Redis作为内存数据库的优势和应用
  • ✅ 不同场景下的数据库选择策略

下一步: 学习Redis中的相关数据结构与基本指令


💡 提示:选择合适的数据库是系统架构设计的关键一步,理解各种数据库的优缺点有助于做出最佳决策。

本文为Redis学习笔记,持续更新中…

如果我的内容对你有帮助,希望可以收获你的点赞、评论、收藏。

请添加图片描述

http://www.dtcms.com/a/312908.html

相关文章:

  • PPT写作五个境界--仅供学习交流使用
  • 构建企业级Web应用:AWS全栈架构深度解析
  • 力扣经典算法篇-39-有效的数独(二维数组和三维数组的应用)
  • AI 编程技巧、技术笔记
  • 安卓调javaScript Not find method “forceLogout“ implementatidsignature or namesp
  • 面向智能体的上下文工程:策略、实现与 LangGraph 实践
  • 基于单片机火灾报警系统/防火防盗系统设计
  • (9)NMPC非线性模型预测控制及机械臂ROS控制器实现
  • MCP-与本地大模型集成实现工具调用
  • 微服务的使用
  • java中Optional类的使用和注意采坑
  • DBMS设计 之2 从数据中台到三种中台
  • 常见的框架漏洞(Thinkphp,spring,Shiro)
  • 常见的框架漏洞
  • IO流-对象流
  • MCP革命:AI世界的“USB-C”接口如何重塑智能体与外部工具的连接
  • 均线:从市场脉搏到量子计算的时空密码
  • K8S几种常见CNI深入比较
  • Qt::AA_DontCreateNativeWidgetSiblings使用注意事项
  • 游戏设计原理
  • Flutter开发 dart异步
  • Linux网络编程 ---五种IO模型
  • 基于 Spring Boot + Vue 实现人脸采集功能全流程
  • Python----大模型(从预训练到分布式优化的核心技术解析)
  • 2、RabbitMQ的5种模式基本使用(Maven项目)
  • 迈向透明人工智能: 可解释性大语言模型研究综述
  • ubuntu apt安装与dpkg安装相互之间的关系
  • Python 实例属性与方法命名冲突:一次隐藏的Bug引发的思考
  • 途游Android面试题及参考答案
  • 【GitHub探索】Agent开发平台CozeStudio开源版本踩坑体验