NoSql数据库

NoSql四大分类

      KV键值 Redis

      文档型数据库(bson格式比较多)MongoDB

      列表存储数据库 HBase

      图关系数据库

在分布式数据库中CAP原理CAP+BASE

传统的ACID分别是什么

A(Atomicity)原子性

事务里的所有操作要么全做完,要么都不做

C(Consistency)一致性

 数据库要一直处于一致,事物的运行不会改变数据库原本的一致

I(Isolation)独立性

事物的并发不会互相影响,比如A给B转100元,在还没确定之前,B去查询账户不会查到多了100元

D(Durability)持久性

一旦失误提交之后,他的所做的修改会永久保留在数据库上,绝不会丢失

CAP原理

C:Consistency(强一致性)

A:Availability(可用性)

P:Partition tolerance(分区容错性)

CAP中只能满足上述三个中的二个

CA - 单点集群,满足一致性,可用性的系统,通常在可扩展性上不太强(RDBMS,传统的Oracle数据库)

CP - 满足一致性,分区容错的系统,通常性能不是特别高(MongoDB,HBase,Redis)

AP - 满足可用性,分区容忍性的系统,通常可能对一致性要求低一些(CouchDB,大多数网站架构的选择)

CAP+BASE

BASE就是为了解决关系数据库强一致性引起的问题而引起的可用性降低而提出的解决方案

BASE其实是下面三个术语的缩写

基本可用(Basically Available)

软状态(Soft state)

最终一致(Eventually consistent)

鸭的思想就是通过让系统放松对某一时刻数据一致性的要求来换取系统整体伸缩性和性能上改观

分布式集群

分布式:不同的多台服务器上面部署不同的服务模块(工程),他们之间通过Rpc/Rmi之间通信和调用,对外提供服务和组内协作

集群:不同的多台服务器上面部署相同的服务模块,通过分布式调度软件进行统一的调度,对外提供服务和访问

posted @ 2016-12-29 10:58  wenxudong  阅读(104)  评论(0编辑  收藏  举报