八股训练营第 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 上的不同事件选择不同的事件处理器
相关推荐
kka杰2 小时前
MYSQL结构操作DDL指令2.表操作
数据库·mysql
曾经的三心草2 小时前
Mysql
数据库·mysql·oracle
河铃旅鹿2 小时前
Android开发-java版:SQLite数据库
android·数据库·笔记·学习·sqlite
laplace01232 小时前
数据库-MySQL-02
数据库·mysql·oracle
百***66172 小时前
SQL Server 创建用户并授权
数据库·oracle
小许学java2 小时前
MySQL-触发器
java·数据库·mysql·存储过程·触发器
wangjialelele2 小时前
详解mysql命令行操作与语言链接
c语言·数据库·c++·mysql·oracle
riderxin2 小时前
【20251101】mysql基本命令复习
数据库·mysql·oracle
合作小小程序员小小店3 小时前
桌面开发,在线%幼儿教育考试管理%系统,基于eclipse,java,swing,mysql数据库
java·数据库·sql·mysql·eclipse·jdk