Redis与Mysql区别

一、关系型数据库

mysql,pgsql,oracle ,sqlserver 支持连表关联查询(会有一些特定的语法特特性)

二、非关系型数据库

redis,mongodb,memcache (key-value)

三、关系型数据库与非关系型数据库的区别:

1)关系型数据库:表和表之间有关联关系,支持连表查询,关联查询,数据存储在次哦按

2)非关系型数据库不支持,只是键值对存储方式,数据存储在内存,读写快

区别:sql与nosql,内存数据库与非内存数据库

四、Redis内存数据库

redis ,memcache

Redis:qps大概都为10W条/s

1个redis服务只能占用一核cpu(为单线程)

性能方面:磁盘io瓶颈,内存越大,性能越高,CPU

sas ssd pcie卡ssd

五、如何选择数据库配置

30万磁盘iops,ssd 3-5万 ,磁盘吞吐 400MB/S

压测指标;更多的是参考意义(指标都是各公司对外公布的数据,特定条件或者资源下才可达到)

sysbench:磁盘io,内存,数据库等等压测

内存数据库;redis,顾名思义就是数据放在内存的,

1G redis QPS 理论10万+ 10Gredis 还是10万+,cpu性能,

一个redis 只能占用一核cpu

六、redis数据都在内存,重启会不会丢?

1、Redis带有两种数据持久化方式

1)一种是全备,定期命令:bgsave------>rdb(磁盘物理备份)

重启后,能到对应的节点,重新加载rdb文件

2)一种aof日志(拓展文件)

重启aof日志文件,重新加载

2、架构层面:

1)主从:主挂了,从库会往上推,推到主库(架构层面能保证服务的可用性)

2)集群

mysql redis 微博:

redis 只做缓存,需要做持久化的,一般是落在mysql层

redis一般也用来做mysql上层缓存层

游戏行业redis数据裸盘,最终------mysql

七、mysql 两大特大型

1、OLTP实时性(连接数处理)------交易完成(事务处理)

2、OLAP数据量分析:计算分析结果(事务分析)

3、mysql更擅长oltp,数据量不大时也可olap,Oracle更擅长olap

八、存储引擎的变化

5.1以前默认的myisam引擎,5.5以后默认的innodb

myisam 非事务引擎,表锁

innodb 事务引擎,行锁

是否支持事务

事务会有完整性(譬如:物流没完整送货,需要退货,一直到第一步骤)

相关推荐
21号 128 分钟前
9.Redis 集群(重在理解)
数据库·redis·算法
爬山算法29 分钟前
Redis(73)如何处理Redis分布式锁的死锁问题?
数据库·redis·分布式
jason.zeng@15022071 小时前
centos中安装redis
linux·redis·centos
祈祷苍天赐我java之术2 小时前
Redis 数据类型与使用场景
java·开发语言·前端·redis·分布式·spring·bootstrap
哥哥还在IT中9 小时前
Redis多线程架构深度解析-从单线程到I/O Threading
redis·架构·bootstrap
元闰子10 小时前
怎么让程序更高效地连起来?
数据库·redis·mysql
洲覆10 小时前
Redis 内存淘汰策略
开发语言·数据库·redis·缓存
christine-rr11 小时前
linux常用命令——其他
linux·服务器·网络·数据库·redis·ubuntu
埃泽漫笔14 小时前
Redis的List数据结构底层实现
redis·list
不良人天码星15 小时前
redis的事务,以及watch的原理
数据库·redis·缓存