Redis

Redis概述_为什么要用NoSQL

单机Mysql的美好年代 在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付。在那个时候,更多的都是 静态网页,动态交互类型的网站不多。

 

Tomcat与数据库分开部署

Tomcat和数据库分别独占服务器资源,显著提高两者各自性能。

 

新的问题: 随着用户数的增长,并发读写数据库成为瓶颈。

引入本地缓存和分布式缓存

通过缓存能把绝大多数请求在读写数据库前拦截掉,大大降低数据库压力。其中涉及的技术包括:使用 memcached作为本地缓存,使用Redis作为分布式缓存。

缓存抗住了大部分的访问请求,随着用户数的增长,并发压力主要落在单机的Tomcat上,响应逐 渐变慢

 

数据库读写分离

由于数据库的写入压力增加,Memcached只能缓解数据库的读取压力。读写集中在一个数据库上让数 据库不堪重负,大部分网站开始使用主从复制技术来达到读写分离,以提高读写性能和读库的可扩展 性。Mysql的master-slave模式成为这个时候的网站标配了

什么是NoSQL

NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,泛指非关系型的数据库。随着互联网web2.0 网站的兴起,传统的关系数据库在应付特别是超大规模和高并发类型纯动态网站已经显得力不从心,暴 露了很多难以克服的问题。

结构化数据和非结构化数据

结构化数据指的是由二维表结构来逻辑表达和实现的数据,严格遵循数据格式与长度规范,也称作 为行数据。 非结构化数据,指的是数据结构不规则或不完整,没有任何预定义的数据模型,不方便用二维逻辑 表来表现的数据,例如办公文档(Word)、文本、图片、HTML、各类报表、视频音频等。

NoSQL的四大分类

KV NoSql (代表 ----Redis
KV NoSql 顾名思义就是以键值对形式存储的非关系型数据库,是最简单、最容易理解也是大家最熟悉
的一种 NoSql ,因此比较快地带过。
特点:
数据基于内存,读写效率高
KV 型数据,时间复杂度为 O(1) ,查询速度快
注意:
KV NoSql 最大的优点就是 高性能 ,利用 Redis 自带的 BenchMark 做基准测试, TPS 可达到 10 万的
级别,性能非常强劲。
列式 NoSql (代表 ----HBase
列式 NoSql ,大数据时代最具代表性的技术之一了,以 HBase 为代表。
关系行数据库数据

 

注意:
看到每行有 name phone address 三个字段,这是行式存储的方式,且可以观察 id = 2 的这条数
据,即使 phone 字段没有,它也是占空间的。
列式数据库数据

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值