NoSql 非关系型数据库基础讲解

NoSQL

指的是非关系型数据库。用于超大数据的存储。例如谷歌和FaceBook.这些类型的数据存储不需要固定的模式,无需多于操作就可以横向扩展。

使用NoSql的好处

可以对数据量比较大的数据,比如用户个人信息,日志等数据进行挖掘。因为数据量比较大,SQL数据库已经不适合这些应用,NoSql数据库的发展却能很好的处理这些数据。

关系型数据库和非关系型数据库比较

关系型数据库 RDBMS

高度组织化结构化数据;结构化查询语言(SQL);数据和关系都存储在单独的表中;数据操纵语言,数据定义语言;严格的一致性;基础事务

非关系型数据库 NoSql:

代表不仅仅是sql,没有声明性查询语言;没有预定义的模式;键-值对存储,列存储,文档存储,图形数据库;最终一致性,而非ACID属性(指的是事务的原子性,一致性,隔离性和持久性);非结构化和不可预知的数据;CAP定理;高性能,高可用和可伸缩性。

CAP定理

对于一个分布式计算系统来说,不可能同时满足以下三点:

一致性(Consistency):所有节点在同一时间具有相同的数据

可用性(Availability):保证每个请求不管成功或者失败都有响应

分割容忍(Partition tolerance):系统中任意信息的丢失或失败不会影响系统的继续运作

CAP理论的核心是:一个分布式系统不可能同时很好的满足一致性,可用性和分区容错性这三个需求,最多只能同时较好的满足两个。

CA:可扩展性不太强大 CP 性能不高 AP 对一致性要求低

NoSQL优点和缺点

优点:高可扩展性;分布式计算;低成本;架构的灵活性,半结构化数据;没有复杂的关系

缺点:没有标准化;有限的查询功能;最终一致是不直观的程序

BASE原则

BASE是NoSQL数据库通常对可用性及一致性的弱要求原则:

Basically Availble --基本可用

Soft-state --软状态/柔性事务。 "Soft state" 可以理解为"无连接"的, 而 "Hard state" 是"面向连接"的

Eventual Consistency -- 最终一致性, 也是是 ACID 的最终目的。

常用的NoSQL分类

列存储:Hbase

文档存储:MongoDB CouchDB

key-value存储:Redis

图存储:Neo4J

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值