近年来, NoSQL在IT界着实火了一把。不仅仅在互联网领域,越来越多的企业应用中,NoSQL也成为关系数据库管理系统(RDBMS)一种替代选项。 NoSQL的出现与流行是有原因的,数据量和数据处理速度日益增长,而数据库本身的增强可以满足数据在互联网上读写所需的速度。 相比于传统的关系型数据库管理系统,水平可扩展的NoSQL系统与之有着本质的区别: 关系数据库管理系统首先是基于事务的,遵循ACID规则。
而NoSQL系统并不完全支持ACID,而且许多NoSQL系统中并没有事务的概念。关系数据库管理系统中的数据位于固定的表和字段。而NoSQL系统并不依赖固定表和字段。NoSQL系统中并不使……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
近年来, 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商用版。
翻译
相关推荐
-
MongoDB与Cassandra数据库对比
MongoDB和Cassandra都属于NoSQL数据库系列,它们也恰好都是开源,但是,它们的相似之处仅此而已 […]
-
OpenWorld18大会:Ellison宣布数据库的搜寻和破坏任务
在旧金山举行的甲骨文OpenWorld 2018大会中,甲骨文首席技术官(CTO)兼创始人Larry Elli […]
-
eHarmony公司利用Redis NoSQL数据库进行热存储
虽然关系型数据库不会消失,但关系型数据库管理系统有时仅在会话管理、推荐引擎和模式匹配等关键Web应用程序中担当 […]
-
ObjectRocket着力发展Azure MongoDB服务
MongoDB吸引了微软公司的注意力,微软公司计划针对运行于该公司2017年发布的Azure Cosmos D […]