欢迎来到福编程网,本站提供各种互联网专业知识!
您的位置:网站首页 > 数据库 > MongoDB

MongoDB系列教程(一):NoSQL起源

发布时间:2015-05-07 作者:投稿junjie 来源:转载
这篇文章主要介绍了MongoDB系列教程(一):NoSQL起源,本文讲解了为什么出现NoSQL、NoSQL历史、SQL和NoSql的区别、NoSQL数据库类型等内容,需要的朋友可以参考下

为什么出现NoSQL?

随着互联网的发展,当我们把一台服务器一台服务器变成两台服务器,当我们开始建立数据备份,当我们需要加一个缓冲层,来调整所有的查询,投入更多的硬件。

最后,需要将数据切分多个集群上,并重构大量的应用逻辑以适应这种切分。不久之后,你就会发现被自己数月前的设计数据结构限制住了。

随着web2.0的兴起,关系型数据库本身无法克服的缺陷越来越明显,主要表现为如下几点。

1、对数据高并发读写的需求

2、对海量数据的高效率存储和访问的需求。

3、对数据库的高可扩展性和高可用性的需求。

4、数据库事务一致性需求。

5、数据库写实性和读写时性需求。

6、对复杂SQL的查询,特别是对关联查询的需求。

NoSQL是Notonly SQL的缩写,NoSQL不使用SQL作为查询语言。其数据存储可以不需要固定的表格模式,也经常避免使用SQL的join操作,一般有水平可扩展性的特征。

NoSQL历史?

1、NoSQL一词最早出现在1998年,是Carlo Strozzi开发的一个轻量、开源、不提供SQL功能的关系数据库。

2、2009年,Last.fm的Johan Oskarsson发起了一次关于分布式开源数据库的讨论,来自Rackspace的Eric Evans再次提出了NoSQL概念,这时的NoSQL主要是指非关系型、分布式、不提供数据库设计模式。

3、2009年趋势高涨,被定为“非关系型的”数据存储,相对于关系型数据库运用,这一概念无疑是一种全新思维的注入。

SQL和NoSql的区别?

NoSQL具有如下几点

优点:

1、高并发读写

2、海量数据存储

3、高可扩展性

4、高可用性

缺点:

5、缺乏事务一致性

6、缺乏读写实时性

7、不支持复杂查询

NoSQL数据库类型

Key-value:key指Value的键值对,通常用hash table来实现

列式数据库:同一列数据存在一起

文档型数据库:Key-Value对应的键值对,Value为结构化数据产品:MongoDB

图结构数据库:以“图”为基本存储模型,产品:Neo4j,InfoGrid,InfiniteGraph

NoSQL数据库开源软件

1、Membase软件

2、Hypertable

3、ApacheCassandra

4、MongoDB

在这里我们用的是MongoDB,下篇MongoDB简介,以及实例操作。

相关推荐