NoSQL解决业务IO压力-Redis

  • 水平切分:比如一张表当中有100万条数据,而每次在100万当中进行查询效率很低,就把这100万条数据拆分,每20万一张表,分成了5张表,在进行查询时分成5张分别查询,提高了效率。
  • 垂直切分:比如一张表当中有200个字段,这样在进行查询时同样查询效率很低,就把200个字段每50个变成一张表,在进行查询时根据字段分别查询,提高了效率。
  • 读写分离,服务器进行的读操作数量是远高于写操作的,所以可以把读服务器和写服务器分开,读服务器只能进行读操作,而写服务器可以进行读写操作。提高了效率

NoSQL不依赖业务逻辑关系存储,而是简单的用key-value模式存储,因此大大增加了业务的拓展能力。
NoSQL的特点:

  • 不遵循SQL标准
  • 不支持ACID(ACID:原子性,一致性,隔离性,持久性)
  • 远超SQL的性能

NoSQL的适用场景:

  • 对数据高并发的读写
  • 海量数据的读写
  • 对数据高拓展性的

NoSQL不适用的场景:

  • 需要事务支持
  • 基于SQL的结构化查询存储,处理复杂的关系,需要即席查询(即席查询(Ad Hoc)是用户根据自己的需求,灵活的选择查询条件,系统能够根据用户的选择生成相应的统计报表。即席查询与普通应用查询最大的不同是普通的应用查询是定制开发的,而即席查询是由用户自定义查询条件的。)

简单说就是:用不着SQL的和用了SQL也不行的情况,就可以考虑用NoSQL。

Redis

redis的特点:

  • 支持持久化
  • 除了支持Key-Value,还支持List,Set,Hash,Zset等等(这些数据类型都支持pop/push,add/remove,去交集并集差集等等操作,而且都是原子性)
  • redis对于请求的处理单线程加多路IO复用(就是当请求来临时先排入队列,队列当中当请求就绪时,单线程开始处理,这样可以使单线程一直在处理状态。)
    多路IO复用有三种状态:select,poll,epoll
  • select:每次请求好了都需要看是不是redis的请求,而且只能同时看1024个
  • poll:和select相比没有限制次数
  • epoll:让请求自己本身说明自己是谁的请求。不需要查看

redis的应用场景
在这里插入图片描述

安装redis
https://blog.csdn.net/qq_31850627/article/details/109085845

安装完成后我们可以通过下面代码来查看是否创建成功

ps -ef | grep redis
systemd+  220582  220564  0 19:40 ?        00:00:01 redis-server *:6379
root      224188  185650  0 20:05 pts/0    00:00:00 grep --color=auto redis

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值