zoukankan      html  css  js  c++  java
  • mysql和redis的主要区别

    一、.redis和mysql的区别总结

    1、类型上

            从类型上来说,mysql是关系型数据库,redis是缓存数据库

    2、作用上

           mysql用于持久化的存储数据到硬盘,功能强大,但是速度较慢

           redis用于存储使用较为频繁的数据到缓存中,读取速度快

    3、需求上

           mysql和redis因为需求的不同,一般都是配合使用。

    二、详细说明

    1.mysql和redis的数据库类型

    mysql是关系型数据库,主要用于存放持久化数据,将数据存储在硬盘中,读取速度较慢。

    redis是NOSQL,即非关系型数据库,也是缓存数据库,即将数据存储在缓存中,缓存的读取速度快,能够大大的提高运行效率,但是保存时间有限

    2.mysql的运行机制

    mysql作为持久化存储的关系型数据库,相对薄弱的地方在于每次请求访问数据库时,都存在着I/O操作,如果反复频繁的访问数据库。第一:会在反复链接数据库上花费大量时间,从而导致运行效率过慢;第二:反复的访问数据库也会导致数据库的负载过高,那么此时缓存的概念就衍生了出来。

    3.缓存

    缓存就是数据交换的缓冲区(cache),当浏览器执行请求时,首先会对在缓存中进行查找,如果存在,就获取;否则就访问数据库。

    缓存的好处就是读取速度快

    4.redis数据库

    redis数据库就是一款缓存数据库,用于存储使用频繁的数据,这样减少访问数据库的次数,提高运行效率。

    总结:

    mysql是经典的关系型数据库,而redis是非关系型数据库。

    这两者的主要差异在于查询,redis只能用key去获取value,不支持sql语句来进行查询。而mysql则只能通过sql语句来进行查询,不能直接通过key来获取value。

    因为redis的数据读取过程的时间复杂度是O(1),也就是说和数据量无关。再加上数据保存在内存,所以读取速度在理论上已经达到了上限。而mysql的查询则是通过扫描表来进行,读取的速度取决于数据量,以及是否有合适的索引。



    认清现实,放弃幻想。 细节决定成败,心态放好,认真学习与工作。
  • 相关阅读:
    iOS微信打开App
    HTTP请求中的Form Data与Request Payload的区别
    iPhone设备分辨率一览
    iOS JS与原生交互(全集)
    iOS与导航相关的都在这
    iOS论App推送方案
    iOS接收远程通知响应方法
    iOS10以前的本地通知和远程通知
    手写一个MVVM
    react组件中返回并列元素的方法
  • 原文地址:https://www.cnblogs.com/jyf2018/p/15337139.html
Copyright © 2011-2022 走看看