SQL和NOSQL数据库

发布于 2021-04-22  319 次阅读


一,SQL数据的发展(以MySQL为例)

一,单体架构

在过去,一个网站的访问量一般都不大,用单个数据库完全可以应对
在单体架构中数据库遇到的瓶颈:
  1. 数据量的过大,一个机器放不下
  2. 数据的索引(B+Tree)和数据一个机器的内存放不下
  3. 访问量(读写混合)一个实例不能承担

二,Memcached(缓存)+Mysql+垂直拆分

随着访问量的增加,大部分使用MySQL架构的网站,在数据库都开始出现了性能问题,web程序,不再仅仅专注在功能,也开始追求性能,开始大量用缓存技术缓解数据库的压力,优化数据库的架构和索引,开始比较流行的是通过文件缓存来缓解数据库的压力,但访问量大时,多台web机器通过文件缓存不能共享,大量的小文件缓存也带来了比较大的IO压力,这个时候,Memcached就诞生了
 
文件缓存: