八股训练营第 20 天 | MySQL和Redis的区别是什么?Redis有什么优缺点、为什么用Redis查询会比较快?

MySQL和Redis的区别是什么?

  • Redis 是基于键值对的,支持多种数据结构;MySQL 是一种关系型数据库,通过表来组织数据。
  • Redis 将数据存在内存中,通过持久化机制写入磁盘;MySQL 将数据保存在磁盘上。
  • Redis 不使用 SQL,有自己的命令集;MySQL 通过 SQL 来查询和操作数据。
  • Redis 以高性能、低延迟为目标,适用于读多写少的场景;MySQL 适用于需要复杂查询、事务操作的场景。

总而言之,Redis 更适用于高并发的场景。在实际中两者通常结合使用。

Redis有什么优缺点?为什么用Redis查询会比较快?

优点:

  • Redis 是基于内存的一种非关系型数据库,读写速度非常快。常用于缓存、消息队列、分布式锁、键值对数据库等。
  • Redis 支持多种数据结构,如字符串、哈希表、列表、集合、有序集合等。
  • Redis 还支持分布式特性,可将数据分布在多个节点上,以提高可用性和扩展性。

缺点:

  • 由于是基于内存的,而物理内存的容量有限,所以存储不了海量的数据。存储成本会比硬盘高。

为什么查询快:

  • 基于内存:内存的读写速度远远大于硬盘,不会有不必要的 I/O。
  • 单线程:避免上下文切换的开销和 CPU 的消耗。
  • I/O多路复用:可以同时监听多个 Socket,根据 Socket 上的不同事件选择不同的事件处理器
相关推荐
神仙别闹9 小时前
基于C语言实现 TINY+ 编译器
c语言·开发语言·数据库
Wang's Blog9 小时前
Java 项目实战: 外卖平台优化-使用Redis作为缓存产品与TTL配置
java·redis·缓存
adinnet202610 小时前
意图识别(Intent Recognition):智能体怎么听懂你想干啥
大数据·数据库
笨小孩@GF 知行合一10 小时前
易语言-基础-外部数据库
数据库·编程·易语言·中文编程
DolphinDB智臾科技10 小时前
告别繁琐解析!BinaryTcp 模块实现沪深 Level‑1 行情接收‑解析‑落库一站式能力
数据库·插件·dolphindb
weixin_4045512410 小时前
Oracle SQL 优化知识库:构建方案与价值评估
数据库·sql·oracle
茉莉玫瑰花茶11 小时前
OpenGL [ 基础概念 ]
java·前端·数据库
温暖小土11 小时前
Spring AI 接入 DeepSeek Chat 模型
数据库·人工智能·spring
张小姐的猫11 小时前
【AI大模型接入SDK】 —— 前端页面 & 项目总结与拓展
前端·数据结构·数据库·c++·人工智能·chatgpt
IvorySQL11 小时前
去 IOE 的最后一公里:IvorySQL 5.4 × RISC-V 实测
数据库·人工智能·ai·postgresql·risc-v