redis与mysql的区别和理论解释

我们首先先说一下mysql,

mysql是可以持久化储存的关系型数据库,功能强大,既然涉及到储存那肯定要涉及到i/o操作(i/o操作就是输入(Input)和输出(Output)的意思)

访问速度相较于非关系型数据会慢很多,为了解决这个问题,于是就出现了缓存机制,把一些访问频次高的数据缓存一部分到内存中,如果用户在访问网站的时候,首先先在缓存中查询,如果未命中,再去mysql中查询.

所以如果是访问量不高的网站的话,完全用mysql一个数据库其实也可以完整的展现出页面

然后,再说说redis,

redis是一种非关系型数据库, 它最大的优点就是访问数据的速度快,,它是在驻留在内存中运行的,所以访问的速度更快,其中redis是

key-value的数据结构,每条数据都是一个键值对,键的类型是字符串,且键不能重复,值的类型分为五种:

  • 字符串string
  • 哈希hash
  • 列表list
  • 集合set
  • 有序集合zset

-------------------------------------------------华丽的分界线------------------------------------------------------------------

终于到了重点部分,如果不想看两前面的介绍,可以直接跳过,来到这里.

其中两者的区别:

1.首先说说他们的本质区别,前者为关系型数据库,后者为非关系型数据库

2.一个是在磁盘上运行一个是在内存中运行

3.redis的数据相比于mysql,更容易丢失,因为是储存在内存中的


顺带提一下,其中普通的缓存中只提供了简单的数据结构,比如只是简单的string储存,但redis就不一样,它提供了大量的数据结构,其中包括了string,hashset,set,zset,list五中类型,有了这层封装的功能,这就方便很多了,这是和普通缓存不同的地方.

然后最重要的是实现的功能还一样,所以慢慢的选择redis的人更多了

最后说一句,mysql和redis两者功能并不冲突,可以协同一起使用,效率会更高

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值