redis——数据库发展
为什么要用nosql
1.单机mysql年代(数据量小)
这时候网站出现的瓶颈是什么?
1.数据量如果太大,一个机器放不下
2.数据的索引,一个机器内存也放不下
3.访问量(读写混合),一个服务器承受不了
只要你开始出现上面的情况,数据库必须要升级
2.Memcached(缓存)+mysql+垂直拆分(读写分离)
网站80%的情况都是在读,每次都要去查询数据库,很麻烦。为了减轻数据的压力,我们可以使用缓存来提高效率
发展过程:优化数据结构和索引---->文件缓存(IO)---->Memcashed(当时热门技术)
3.分库分表+水平拆分+MySql集群
本质:数据库(读,写)
4.现在
2010-2020十年之间,世界已经发生了巨变。(定位,音乐,热榜)
mysql等关系型数据库不够用!数据量很大,变化很快!
mysql有的使用它来存储一些比较大的文件,博客,图片!数据库表很大,效率很低!如果有一种数据库来专门处理这种数据
mysql压力就变得十分小(研究这些问题)
为什么用nosql
用户个人信息,社交网络,地理位置,用户自己产生的数据,用户日志等等爆发式增长
这时候我们需要使用NoSql数据库。
什么是NoSql
NoSQl=Not Only Sql (不仅仅是sql)
关系型数据库:表格,行,列
泛指非关系型数据库。超大规模的高并发。
NoSql特点
解耦
1.方便扩展(数据之间没有关系,很好扩展)
2.大数据量高性能(redis一秒钟写8万次,读11万次,缓存记录级,是一种细粒度的缓存,高性能)
3.数据类型是多样的!(不用设计数据库,随取随用)
4.传统RDBMS和NoSQL
3V+3高
3V 1.海量Velume
2.多样Variety
3.实时Velocity
3高 1.高并发
2.高可扩
3.高性能
公司实践,RDBMS+nosql一起使用的。
阿里架构发展史
![](https://www.icode9.com/i/l/?n=20&i=blog/2298258/202102/2298258-20210213185305460-1843793906.png
架构师:没有什么加一层是解决不了的
1.商品的基本信息
名称、价格、商家信息
关系型数据库可以解决 MySql/Oracle