为什么使用Nosql1、单机Mysql时代在这里插入图片描述90年代,一个网站的访问量一般不会太大,单个数据库完全够用。随着用户增多,网站出现以下问题数据量增加到一定程度,单机数据库就放不下了数据的索引(B+ Tree),一个机器内存也存放不下访问量变大后(读写混合),一台服务器承受不住。2、Memcached(缓存) + Mysql + 垂直拆分(读写分离)网站80%的情况都是在读,每次都要去查询数据库的话就十分的麻烦!所以说我们希望减轻数据库的压力,我们可以使用缓存来保证效率!在这里插入图片描述优化过程经历了以下几个过程:优化数据库的数据结构和索引(难度大)文件缓存,通过IO流获取比每次都访问数据库效率略高,但是流量爆炸式增长时候,IO流也承受不了MemCache,当时最热门的技术,通过在数据库和数据库访问层之间加上一层缓存,第一次访问时查询数据库,将结果保存到缓存,后续的查询先检查缓存,若有直接拿去使用,效率显著提升。3、分库分表 + 水平拆分 + Mysql集群在这里插入图片描述4、如今最近的年代如今信息量井喷式增长,各种各样的数据出现(用户定位数据,图片数据等),大数据...