一、为什么使用NoSql

一、单机Mysql

早期一个网站的访问量不大,更多是静态页面,动态交互类的网站不多,单个数据库完全可以应付。

上述架构下,数据库存储的瓶颈是什么?

    1) 数据量的总大小,一个机器放不下

    2) 数据的索引(B+Tree)一个机器的内存放不下

    3) 访问量(读写混合)一个实例不能承受

 

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

随着访问量的上升,几乎大部分使用MySql架构的网站在数据库上都出现性能问题。程序员开始大量地使用缓存技术来缓解数据库的压力,优化数据库的结构和索引。开始是通过文件缓存来缓解数据库压力,但当访问量继续增大的时候,多台Web机器通过文件缓存不能共享,大量的小文件缓存也带来比较高的IO压力。Memcached就出现了。

 

三、Mysql主从读写分离

由于数据库的写入压力增加,Memcached只能缓解数据库的读取压力。读写集中在一个数据库上让数据库不堪重负,大部分网站开始使用主从复制技术来达到读写分离,以提高读写性能和读库的可扩展性。Mysql的master-slave模式成为这个时候的网站标配。

 

四、分表分库+水平拆分+mysql集群

分表分库:一个数据9000万,如果只挂在一张表上,不管如何优化都会很慢。但如果分库分表,将1-3000,3001-6000,6001-9000分别进入三个库,这样数据库的压力就减轻了。

 

五、Mysql的扩展性瓶颈

Mysql的扩展性差,大数据下IO压力大,表结构更改困难,正是当前使用Mysql的开发人员面临的问题。

 

六、如今是什么样子

负载均衡-主机(nginx),App服务器(tomcat服务器集群),各种服务器

 

七、为什么使用Nosql

 

八、Nosql是什么

 NoSql = not only sql 不仅仅是sql

    泛指非关系型数据库,随着互联网2.0 网站的兴起, 传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题, 而非关系型数据库则由于其本身的特点得到了非常迅速的发展.nosql数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题,包括超大规模数据的存储例如谷歌 facebook 这些类型的数据存储不需要固定的模式, 无需多余操作就可以横向发展.

 

九、Nosql能干什么

1.易扩展

nosql数据库种类繁多, 但是一共共同点就是去掉关系型数据库的关系型的特性,数据之间无关系,这样就非常容易扩展, 也无形之间, 在架构的层面带来了可扩展的能力

2.大数据量高性能

nosql数据库都具有非常高的读写性能, 尤其在大数据量下, 同样表现优秀,它得益于它的无关系型,数据库结构简单,一般mysql 使用query cache 每次表的更新cache就会失效, 是一种大力度的cache,而 nosql 的cache是记录级的, 一种细粒度的cache,所以nosql 在这个层面上, 性能就高很多
3.多样灵活的数据模型

nosql无需事先为要存储的数据简历字段,随时可以存储自定义的数据格式, 而在关系数据库中是噩梦, 要改表

4.传统RDBMS VS NOSQL

            RDBMS 特性:

            -高度组织化结构化的数据 , 

           - 结构化查询语句sql, 

            -数据和关系都存储在单独的表中,

           - 数据操控语言,数据定义语言

           - 严格的一致性, 基础事务

            NoSQL的特性:

           - 代表不仅仅是sql

           - 没有声明性查询语言

           - 没有预定义的模式

           -键值对存储, 列存储, 文档存储, 图形数据库

           - 最终一致性, 非acid属性

           -cap定理

           - 高性能, 高可用, 可伸缩性

 

十、Nosql类型

1.Redis 或者 tair  数据类型丰富 

2.memcache 专注高速缓存

3.mongdb 

 

十一、关于redis

 1.kv 键值对

 2.cache 缓存

 3.persistence 持久化

 

十二、3V和3高

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值