开发补习班 01 | Redis数据库

最近在补习后端技术知识,计划涉及范围在 GO 语言、软件工程以及数据库,这是系列笔记的第一篇,Redis数据库。

Redis 是一个高性能的 key-value 数据库,有着更为复杂的数据结构,相比于 MySQL,Redis基于内存,读写速度快,也可做持久化,缺点是内存空间有限,当数据量超过内存空间时,需扩充内存,但内存价格贵;MySQL基于磁盘,读写速度没有Redis快,但是不受空间容量限制,性价比高。大多数的应用场景是MySQL(主)+Redis(辅),MySQL做为主存储,Redis用于缓存,加快访问速度。需要高性能的地方使用Redis,不需要高性能的地方使用MySQL。存储数据在MySQL和Redis之间做同步。

特点

  • 远程,分服务端和客户端
  • 基于内存,高速、性能优秀、吃内存
  • 非关系型数据库,(MySQL是关系型,需要提前定义好存储字典)

应用场景

  • 缓存 某个接口比较慢时,缓存至redis 时,随用随取,可提升系统性能
  • 队列 使用 pop 弹出队列,使用push插出队列
  • 数据存储 增删改查(持久化机制,保证完整和安全)

数据类型

数据类型 存储的值 读写能力
String 统称为元素,可以是字符串、整数或浮点 对字符串操作,对整数类型加减
List 一个序列集合且每个节点都包好了一个元素,不要求唯一 序列两端推入、或弹出元素;修剪、查找或移除元素 队列
Set 各不相同的元素 从集合中插入或删除元素
Hash 有 key-value的散列组,其中 key (必须唯一)是字符串,value 是元素 从集合中插入或删除元素
Sort Set 带分数的 score-value 有序集合,其中 score 为浮点,value 为元素 集合插入,按照分数范围查找

相关阅读

2020-09-13
Comments
Write a Comment