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的安装与使用