内蒙古创意网站开发,百度视频推广,自己做网站卖什么,做赚钱问卷调查的网站好1#xff09;什么是Nosql 
NoSQL(NoSQL  Not Only SQL )#xff0c;意即“不仅仅是SQL”#xff0c; 泛指非关系型的数据库。随着互联网web2.0网站的兴起#xff0c;传统的关系数据库在应付web2.0网站#xff0c;特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显…1什么是Nosql 
NoSQL(NoSQL  Not Only SQL )意即“不仅仅是SQL” 泛指非关系型的数据库。随着互联网web2.0网站的兴起传统的关系数据库在应付web2.0网站特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心暴露了很多难以克服的问题而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战尤其是大数据应用难题包括超大规模数据的存储。 
例如谷歌或Facebook每天为他们的用户收集万亿比特的数据。这些类型的数据存储不需要固定的模式无需多余操作就可以横向扩展 
2特点 3Nosql数据库的四大分类 
1.介绍 2.四者对比 4在分布式数据库中CAP原理CAPBASE 
1.传统的ACID分别是什么 A (Atomicity) 原子性C (Consistency) 一致性I (Isolation) 独立性D (Durability) 持久性2.CAP(重点)Nosql CAP最多只能选择两个 C:Consistency强一致性A:Availability可用性P:Partition tolerance分区容错性CAP理论的核心是一个分布式系统不可能同时很好的满足一致性可用性和分区容错性这三个需求最多只能同时较好的满足两个。 因此根据 CAP 原理将 NoSQL 数据库分成了满足 CA 原则、满足 CP 原则和满足 AP 原则三 大类 CA - 单点集群满足一致性可用性的系统通常在可扩展性上不太强大。 CP - 满足一致性分区容忍必的系统通常性能不是特别高。 AP - 满足可用性分区容忍性的系统通常可能对一致性要求低一些。 
3.CAP的3进2重点 
CAP理论就是说在分布式存储系统中最多只能实现上面的两点。 而由于当前的网络硬件肯定会出现延迟丢包等问题所以 
分区容忍性是我们必须需要实现的。 所以我们只能在一致性和可用性之间进行权衡没有NoSQL系统能同时保证这三点。 C:强一致性 A高可用性 P分布式容忍性 CA 传统Oracle数据库 
AP 大多数网站架构的选择 
CP Redis、Mongodb 
注意分布式架构的时候必须做出取舍。 一致性和可用性之间取一个平衡。多余大多数web应用其实并不需要强一致性。 因此牺牲C换取P这是目前分布式数据库产品的方向 
注意分布式架构的时候必须做出取舍。 一致性和可用性之间取一个平衡。多余大多数web应用其实并不需要强一致性。 因此牺牲C换取P这是目前分布式数据库产品的方向 一致性与可用性的决择 
对于web2.0网站来说关系数据库的很多主要特性却往往无用武之地 
数据库事务一致性需求   很多web实时系统并不要求严格的数据库事务对读一致性的要求很低 有些场合对写一致性要求并不高。允许实现最终一致性。 
数据库的写实时性和读实时性需求   对关系数据库来说插入一条数据之后立刻查询是肯定可以读出来这条数据的但是对于很多web应用来说并不要求这么高的实时性比方说发一条消息之 后过几秒乃至十几秒之后我的订阅者才看到这条动态是完全可以接受的。 
对复杂的SQL查询特别是多表关联查询的需求   任何大数据量的web系统都非常忌讳多个大表的关联查询以及复杂的数据分析类型的报表查询特别是SNS类型的网站从需求以及产品设计角 度就避免了这种情况的产生。往往更多的只是单表的主键查询以及单表的简单条件分页查询SQL的功能被极大的弱化了。 
4.什么是BASE 
BASE就是为了解决关系数据库强一致性引起的问题而引起的可用性降低而提出的解决方案。 
BASE其实是下面三个术语的缩写 基本可用Basically Available 软状态Soft state 最终一致Eventually consistent目的是最终一致性 
它的思想是通过让系统放松对某一时刻数据一致性的要求来换取系统整体伸缩性和性能上改观。为什么这么说呢缘由就在于大型系统往往由于地域分布和极高性能的要求不可能采用分布式事务来完成这些指标要想获得这些指标我们必须采用另外一种方式来完成这里BASE就是解决这个问题的办法