NOSQL概述:
数据存储瓶颈:数据量过大,一个机器放不下;数据的索引一个机器内存放不下;访问量(读写混合)一个实例不能承受。
Memchched(缓存)+mysql+垂直拆分:
mysql主从复制读写分离:数据库写入压力增加,Memcached只能缓解数据库的读取压力,读写集中在一个数据库上让数据不堪重负,大部分网站开始使用主从复制技术达到读写分离,以提高读写性能和读库的可扩展性。mysql的master-slave模式成为这个时候的网站标配。
分库分表+水平拆分+mysql集群:Memcached的高速缓存,mysql的主从复制,读写分离的基础上,数据量的持续猛增,由于MyISAM使用表锁,在高并发下会出现严重的锁问题,大量的高并发mysql应用开始使用innoDB引擎代替MyISAM。同时开始流行使用分库分表来缓存写压力和数据增长的扩展问题。虽然mysql退出了MYsql Cluster集群,但性能也不不能很好满足互联网的要求,只是在高可靠性上提供了非常大的保证。
mysql的扩展性瓶颈:大文本,大数据。
今天的大型网站分布式结构:
NoSQL(not only sql):非关系型数据库。数据存储不需要固定的模式,无需多余操作。