NoSql相关概念介绍

NoSql相关概念介绍

什么是NoSQL

NoSQL,是非关系型的数据库。NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称。

NoSQL用于超大规模数据的存储。些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。

为什么使用NoSQL

我们如果要对大量的用户数据进行挖掘,那SQL数据库已经不适合这些应用了, NoSQL 数据库的发展却能很好的处理这些大的数据。

关系型数据库管理系统(RDBMS)和非关系型数据库管理系统(NOSQL)的区别

RDBMS

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

NoSQL

  • 代表着不仅仅是SQL
  • 没有声明性查询语言
  • 没有预定义的模式
    -键 - 值对存储,列存储,文档存储,图形数据库
  • 最终一致性,而非ACID属性
  • 非结构化和不可预知的数据
  • CAP定理
  • 高性能,高可用性和可伸缩性

结构化,半结构化,非结构化数据

三类NoSql数据库

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

因此,根据 CAP 原理将 NoSQL 数据库分成了满足 CA 原则、满足 CP 原则和满足 AP 原则三 大类:

CA - 单点集群,满足一致性,可用性的系统,通常在可扩展性上不太强大。(RDBMS)
CP - 满足一致性,分区容忍性的系统,通常性能不是特别高。(MongoDB,HBase,Redis)
AP - 满足可用性,分区容忍性的系统,通常可能对一致性要求低一些。(CouchDB,Cassandra,DynamoDB,Riak)

NoSQL的原则/优点/缺点

原则:

Basically Availble --基本可用
Soft-state --软状态/柔性事务。 “Soft state” 可以理解为"无连接"的, 而 “Hard state” 是"面向连接"的
Eventual Consistency – 最终一致性, 也是 ACID 的最终目的。

优点:

  • 高可扩展性

  • 分布式计算

  • 低成本

  • 架构的灵活性,半结构化数据

  • 没有复杂的关系
    缺点:

  • 没有标准化

  • 有限的查询功能(到目前为止)

  • 最终一致是不直观的程序

NoSQL 数据库分类

1.列存储
2.文档存储(MongoDB):文档存储一般用类似json的格式存储,存储的内容是文档型的。这样也就有机会对某些字段建立索引,实现关系数据库的某些功能。
3.key-value存储(Redis):可以通过key快速查询到其value。一般来说,存储不管value的格式,照单全收。(Redis包含了其他功能)
4.图存储
5.对象存储
6.xml数据库

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值