NoSQL:选择MongoDB解决方案的理由

    文章来源:中国互联 更新时间:2013-8-9 14:07:43
分享:

近年来, NoSQL在IT界着实火了一把。不仅仅在互联网领域,越来越多的企业应用中,NoSQL也成为关系数据库管理系统(RDBMS)一种替代选项。
  NoSQL的出现与流行是有原因的,数据量和数据处理速度日益增长,而数据库本身的增强可以满足数据在互联网上读写所需的速度。
  相比于传统的关系型数据库管理系统,水平可扩展的NoSQL系统与之有着本质的区别:
  ?关系数据库管理系统首先是基于事务的,遵循ACID规则。而NoSQL系统并不完全支持ACID,而且许多NoSQL系统中并没有事务的概念。
  ?关系数据库管理系统中的数据位于固定的表和字段。而NoSQL系统并不依赖固定表和字段。
  ?NoSQL系统中并不使用SQL查询。
  ?通过主键对数据进行分解在关系数据库管理系统中不是强制的。而NoSQL系统则是通过主键来访问数据的。
  正如上述提到的与关系数据库管理系统的差异,NoSQL系统可以分为主要的三大类:基于文档,基于键/值以及基于图形,每种类型的NoSQL系统对于数据一致性和数据访问策略都是有所差异的。
  MongoDB简介
  如今,市面上有很多NoSQL解决方案,而MongoDB是其中最为流行的解决方案。
  MongoDB是2007年起由10gen公司进行改良并在2009年已经成为拥有AGPL许可的开源项目。MongoDB将自身定位为一个开源的、易于扩展的文档型数据库。每条记录实际上都是以一个文档存在于MongoDB中。文档以JSON格式,二进制JSON (BSN) 存储在MongoDB中。BSON文档是包含有所存元素有序列表的对象。每条元素都由一个字段名和一个特定类型的值组成。以下对是传统关系数据库管理系统与MongoDB进行的对比:

SQL

MongoDB

集合

文档或BSON文档

字段

索引

索引

表连接

嵌入式文档或链接

声明某一列或某些列作为主键

自动设置_id字段为主键

聚合(如Group by)

聚合框架

为什么选择MongoDB?
  是什么让MongoDB流行?以下列出的功能特性使它从众多NoSQL解决方案中脱颖而出。
  ?查询支持。MongoDB可以根据预定字段和特定范围进行查询,而且还能根据正则表达式进行查询,而许多NoSQL解决方案仅能够让你通过键对数据进行访问。
  ?辅助索引支持。关于使用预定字段进行查询,将这些字段定义为辅助索引可以对数据进行高效的访问。
  ?主从复制支持。对读写操作引导到各自独立的服务器进行处理,在主服务无法访问的时候运行一个备用服务器作为主服务器,提升NoSQL可用性。
  ?分片支持。跨多服务器对大规模数据进行分片是MongoDB有别于其同类的特性之一。
  ?MapReduce支持。
  ?对众多软件语言的驱动支持。
  MongoDB更新版本号是2.4.5。免费下载地址:http://www.mongodb.org/downloads 同时还可以选择MongoDB商用版。
版权说明:本站原创文章,由中国互联SEO优化发表.
本文地址:http://www.hulian.top/zixun/post/6051.html
在线咨询
  • 在线时间
  • 8:00-21:00