MongoDB 简介

MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的,语法有点类似 Javascript 面向对象的查询语言,它是一个面向集合的、模式自由的文档型数据库。

面向集合( Collenction-Orented 

意思是数据被分组存储在数据集中, 被称为一个集合( Collenction) 。每个集合在数据库中

都有一个唯一的标识名,并且可以包含无限数目的文档。集合的概念类似关系型数据库

( RDBMS )里的表( table ),不同的是它不需要定义任何模式( schema) 。

模式自由( schema-free)

意味着对于存储在 MongoDB 数据库中的文件,我们不需要知道它的任何结构定义。提了这么多次 " 无模式 " 或 "模式自由 " ,它到是个什么概念呢?例如,下面两个记录可以存在于同一个集合里面:

{"name" : "mongo"}

{"age" : 25}

文档型

意思是我们存储的数据是键 - 值对的集合 , 键是字符串 , 值可以是数据类型集合里的任意类型 , 包括数组和文档 .我们把这个数据格式称作“ BSON ”即“ Binary Serialized dOcumentNotation. ”每一个文档相当于关系数据库中的一条记录。

MongoDB 特征

MongoDB 的特点是高性能、易部署、易使用,存储数据非常方便,主要特征有:

面向集合存储,易于存储对象类型的数据

模式自由

支持动态查询

支持完全索引,包含内部对象

支持复制和故障恢复

使用高效的二进制数据存储,包括大型对象(如视频等)

自动处理碎片,以支持云计算层次的扩展性

支持 Python , PHP , Ruby , Java , C , C# , Javascript , Perl 及 C++ 语言的驱动程序,社区中也提供了对 Erlang 及 .NET 等平台的驱动程序

文件存储格式为 BSON (一种 JSON 的扩展)

MongoDB 适用场景

持久化缓存层

高效的实时性

用于对象及 JSON 数据的存储

高伸缩性的场景

大尺寸、低价值的数据存储

MongoDB 不适用场景

要求高度事务性的系统

传统的商业智能应用

复杂的表查询

本文链接:http://www.656463.com/portal.php?mod=view&aid=75 ,转载请注明出处

下一节: MongoDB 的安装与使用

相关推荐