文章目录
NoSql
1.历史
1.单机MySql
APP-->DAL-->MySql
初期:一般网站访问量比较少,单机数据库就够用,更多地使用静态网页html 服务器够用
晋级:
- 数据量太大,机器存储不了;
- 数据的索引,一个机器也放不下;
- 访问量,一个服务器承受不了
2.Memcached(缓存)+MySql+垂直拆分(读写分离)
APP-->DEL-->多个MySql读写分离-->引用缓存
, 为了减少服务器的压力,我么可以使用缓存来保证效率
发展过程:优化数据库和索引–>文件缓存(IO)–>Memcached(当时最热门的技术!)
3.分库分表+水平拆分+MySql集群
本质:数据库(读写)
早些年MyISAM:表锁,十分影响效率,高并发下就会出现严重的锁问题
出现innodb:行锁
然后就出现使用分库分区来解决写的压力!MySQL推出了分库操作
4.如今最近的年代
斗转星移,翻天地覆
关系型数据库很快就不够用了(数据量很多,变化很快)
要设计出一种能够处理大型数据的技术
5. 为什么要使用NoSQL
用户的个人信息,地理位置,产生的数据与,日志的爆发式增长
2.什么是NoSQL
1.NOSQL
not noly sql
:泛指非关系型数据库!
NoSQL在当今大数据环境下发展的十分迅速,Redis是发展最快的,而且是我们当下必须要掌握的技术
有很多数据存储并不是一个固定的格式!可以进行横向拓展
2.特点
- 方便扩展
- 大数据提高性能(redis一秒写8万次,读11万次)
- 数据类型是多样性的(不需要事先设计数据库,随用随取)
- 传统的RDBMS(关系型数据库)和NoSQL(非关系型数据库,三高:高性能,高可用,高可扩