初识mongo(芒果)
MongoDB学习之------------------------初识mongo
一、NOSQL的特点
1.1、它可以处理超大量的数据
1.2、它运行在便宜的PC服务器集群上
1.3、它击碎了性能瓶颈
NoSQL的支持者称,通过NoSQL架构可以省去Web或java应用的数据转换成SQL格式的时间,执行速度变得更快。
1.4、它没有过多的操作
1.5、它的支持者源于社区
二、初识Mongo
NoSQL中目前表现的最好的就是MongoDB,MongoDB是一个介于关系数据库的合非关系数据库之间的产品,它支持的的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型类似于面向对象的查询语言,几乎可以实现类似关系数据库表单查询的绝大部分功能,而且还支持对数据建立索引。它是一个面象集合的,模式模式自由的文档型数据库。
2.1面向集合
意思是数据被分组存储在数据集中,被称为一个集合(Collenction)。每个集合在数据库中都有一个唯一的标识名,并且可以包含无线数目的文档。集合的概念类似关系型数据库里(RDBMS)里的表(table),不同的是它不许要定义任何模式(schema)
2.2模式自由(schema-free)
意味这对于存储MongoDB数据中的文件,我们不需要知道它的任何机构定义。例如,下面两个记录可以存在于同一个集合里面:
{"welcome":"beijing"}
{"age":25}
2.3文档型
意思是我们存储的数据是键-值对的集合,键是字符串,值可以是数据类型集合里的任意类型,包括数组和文档。我们把这个数据格式称作”BSON“即”Binary Serialized dOcument Notation“
2.4.1MongoDB特点
面向集合存储,易于存储对象类型的数据
模式自由
支持动态查询
支持完全索引,包含内部对象
支持查询
支持复制和故障恢复
使用高效的二进制数据存储,包括大型对象(如视频等)
自动处理碎片,以支持云计算层次的扩展性
支持python,PHP,Ruby,Java,C,C#,Javascript,Perl及C++语言的驱动程序,社区中也提供了对Erlang及.NET等平台的驱动程序,社区中也提供了对Erlang及.NET等平台的驱动程序
文件存储格式为BSON(一种JSON的扩展)
可通过网络访问
2.4.2适用场合
网站数据:MongoDB非常适合实时的插入,更新和查询,并具备网站实时数据存储所需的复制及高度伸缩性
缓存:由于性能很高,MongoDB也适合作为信息基础设施的缓存层。在系统重启之后,由MongoDB搭建的持久话缓存可以避免下层的数据源过载
大尺寸,低价值的数据:使用传统的关系型数据库存储一些数据时可能会比较昂贵,在此之前,很过时候程序员往往会选择传统的文件进行存储
高伸缩性的场景:MongoDB非常适合由数十台或数百台服务器组成的数据库,MongoDB的路线图中已经包含对MapReduce引擎的内置支持
用与对象及JSON数据存储:MongoDB的BSON数据格式非常适合文档化格式的存储及查询

浙公网安备 33010602011771号