旗鱼云梯吧 关注:19贴子:139
  • 0回复贴,共1

旗鱼云梯技术分享—MySQL和Redis的区别

只看楼主收藏回复

MySQL是一种开放源代码的关系型数据库管理系统,MySQL数据库系统使用最常用的数据库管理语言进行数据库管理。用于存放持久化数据,将数据存储在硬盘中,读取速度较慢。
MySQL特点
1. MySQL数据库是用C和C++语言编写的,并且使用了多种编辑器进行测试,以保证源码的可移植性
2. 支持多种操作系统,例如:Windows、Linux、Mac OS等等
3. 为多种编程语言提供了API
4. 支持多线程,充分利使用CPU资源
5. 提供TCP/IP、ODBC和JDBC等多种数据库连接途径
6. 提供用于管理、检查、优化数据库操作的管理工具
7. 能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入其他的软件中
Redis是NOSQL,即非关系型数据库,也是缓存数据库。用于将数据存储在缓存中,缓存的读取速度快,能够大大的提高运行效率,但是保存时间有限。
Redis特点
1. 性能极高—Redis能读的速度是110000次/s,写的速度是81000次/s
2. 丰富的数据类型—Redis支持二进制案例的Strings、 Lists、Hashes、Sets及Ordered Sets数据类型操作
3. 原子—Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行
4. 丰富的特性—Redis还支持publish/subscribe、通知、key过期等特性
MySQL和Redis的区别
1. MySQL是关系型数据库;而Redis是缓存数据库
2. MySQL用于持久化的存储数据到硬盘,功能强大,但是速度较慢;而Redis用于存储使用较为频繁的数据到缓存中,读取速度快
3. MySQL只能通过sql语句来进行查询,不能直接通过key来获取value;而Redis只能用key去获取value,不支持sql语句来进行查询
4. MySQL的查询是通过扫描表来进行,读取的速度取决于数据量,以及是否有合适的索引;而Redis的数据读取过程的时间复杂度是O(1),也就是说和数据量无关,再加上数据保存在内存,所以读取速度在理论上已经达到了上限


1楼2020-03-26 18:07回复