一分钟了解mongoDB(HR都懂了)-阿里云开发者社区

开发者社区> 初商> 正文

一分钟了解mongoDB(HR都懂了)

简介: 一分钟了解mongodb
+关注继续查看

一、mongo的由来

截取自英文俚语humongous,意为”巨大的”,是否表明mongodb在设计之初就是为大数据量处理而生呢?

二、mongodb是个啥

mongodb是个可扩展、高性能、开源、面向文档(document-oriented)的数据库,由c++实现。
http://www.mongodb.org/ 官网首页最显著的位置用了”agile”和”scalable”这两个词来形容它:
(1)agile:轻快的,敏捷的;
(2)scalable:可扩展;

三、mongodb的特点

(1)面向文档的存储:类JSON文档作为存储,不固定表模式(schema-free);
(2)全文索引支持(full index support);
(3)多副本与高可用性(replication & availability);
(4)自动分片(auto-sharding);
(5)支持多种类型的查询;
(6)快速原地更新(fast in-place updates):大部分更新操作无需申请新的空间;
(7)map/reduce支持;
(8)gridfs:各种size大小的集群文件支持;

四、wikipedia对mongodb的特性描述

(1)面向文档,以一种类JSON的格式管理记录,且能支持丰富的查询,支持索引;
(2)跨平台,支持windows,linux,solaris,OS X等;
(3)查询结果支持游标操作;
(4)点对点查询(Ad hoc queries):
任何字段(field)都能被查询到,支持范围查询(range queries),正则表达式查询(regular expression),
用户自定义js函数查询,内嵌字段查询(nestad field);
(5)索引支持:
支持单key索引,复合索引,唯一索引,内嵌字段索引;
查询执行时,mongodb的查询优化器会尝试多种查询计划,并挑选最优的计划执行;
(6)集函数支持(aggregation function):即使在map/reduce上,也有类似SQL的group by支持;
(7)文件存储支持,实现了一套GridFS的协议,用来存储和检索文件;
(8)主从、副本的支持:
mongodb支持主从结构,主db能执行读操作与写操作,从db从主db拷贝数据,从db只能执行读操作;
(9)sharding:
mongodb用sharding技术来支持水平扩展,它与Google的BigTable扩展方式十分类似;

五、一些与mysql的相似点与不同

(1)一个服务可以支持多个数据库;
(2)一个数据库可以支持多个表,在mongodb中,以集合(collection)代替了表(table)的概念;
(3)mysql是关系型的数据库,即RDBMS,而mongodb是schema-free的,它更像一个键值存储系统(kv),但与kv不同的是,它又能像mysql的模式一样,能修改文档内的数据,并对内部数据进行索引;
mongodb文档以BSON格式存储,即Binary JSON,BSON是一种二进制交换格式,类似Google Protocol Buffer;

===【完】===

image.png

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Java 设计模式
Java 设计模式
7 0
全局唯一数字ID生成子系统
GUID 雪花算法 snowflake uid-generator
7 0
自然语言处理 NLP(2)
自然语言处理 NLP(2)
5 0
工程设计论——如何写好工程代码
内容概述:从抽象的工程设计论角度阐述了如何写好一份代码。阐述了设计模式和设计原则的底层原理。解释了设计模式与设计原则适用的场景及局限性。工程设计论是在有限设计能力下对被设计对象进行的认知和进行逆运算的过程。在不符合这一条件的领域,不应当死扣设计模式与设计原则。在软件领域,一个显而易见的例子就是不要在极度追求性能的代码中死扣设计模式与设计原则。解释了设计原则中的单一职责原则为何难以掌握和运用。面向接
1 0
消息中间件使用规范(RocketMQ)
消息中间件使用规范(RocketMQ)
9 0
Java 知识点总结篇(1)
Java 知识点总结篇(1)
5 0
Python 中的数据类型、变量、字符编码、输入输出、注释
Python 中的数据类型、变量、字符编码、输入输出、注释
5 0
Java 知识点总结篇(3)
Java 知识点总结篇(3)
7 0
IT人的年夜饭,也太香了吧
平时的IT人,奋战在修复bug前线,起早与贪黑齐飞,调休共假期待定。到了新春佳节,对于IT人来说,没有什么是比一顿年夜饭更让人熨贴肺腑的了。为了让废寝忘食编程序、闻机起早保运维的IT人过一个安稳的好年,本香帅精心准备了一份新春存储年夜饭。
11 0
+关注
770
文章
584
问答
来源圈子
更多
阿里云最有价值专家,简称 MVP(Most Valuable Professional),是专注于帮助他人充分了解和使用阿里云技术的意见领袖阿里云 MVP 奖项为我们提供了这样一个机会,向杰出的意见领袖表示感谢,更希望通过 MVP 将开发者的声音反映到我们的技术路线图上。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载