MongoDB是一种强大灵活可扩展的数据存储方式,它扩展了关系数据库的众多功能。MongoDB的功能非常丰富,但是却非常容易上手和便于使用,今天来了解一下MongoDB的主要概念。

文档

文档是的核心概念。多个键机器关联的值有序的放置在一起便是文档。不同的语言表示文档的方法可能不一样,但是数据结构都是相通的。比如在Javascript中,可以使用json格式表示文档:

{“name”:”wufengtinghai”,”sex”:”m”,”age”:28}

此文档中有两个键值对,实际使用中一般会比这个要复杂一些。需要注意的是:

      1. 文档中的键值对是有顺序的,不同的顺序表示不同的文档。

      2. 文档中的值可以支持多种类型,比如nameage的值分别为字符串和数字。

      3. 文档中的键一般是字符串,但是不能包含\0(空字符),空字符表示键的结尾。

      4. 不能包含.$两种保留字符,同时也不能以下划线开头。

集合

集合是文档的容器,可以将其视为关系数据库中的表。

      1. 集合是无模式,也就是说集合可以存储不同类型的文档。

      1. 集合的名字不能是空字符串。

      1. 集合名字中不能包含空格(\0),其作为集合名字的结尾。

      2. 集合名字不能以system.开头,此是为系统集合保留的关键字。

      3. 集合名字不能包含$

数据库

多个文档构成集合,同样多个集合构成数据库。

      1. 一个Mongon实例可以承载多个数据库。

      2. 不同的数据库使用不同的文件存储数据,使用单独的权限控制。

      3. 数据库名字不能包含空字符串。

      4. 数据库名不能包含‘’(空格).(实心点),/\\0(空字符)。

      5. 数据库名字应该小写,不超过64个字节。

      6. 不能是系统数据库的保留字(adminLocalConfig).

MongoDB基本概念的更多相关文章

  1. mongodb基本概念解析

    MongoDB 概念解析 不管我们学习什么数据库都应该学习其中的基础概念,在mongodb中基本的概念是文档.集合.数据库,下面我们挨个介绍. 下表将帮助您更容易理解Mongo中的一些概念: SQL术 ...

  2. 003.MongoDB主要概念

    一 对比关系 SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table collection 数据库表/集合 row document 数据记录行 ...

  3. (二)MongoDB基本概念

    (二)MongoDB基本概念 mongodb 2018年03月07日 08时43分53秒 mognoDB是一个面向文档的数据库,而不是关系型数据库,是不是用关系型数据库主要是为了获得更好的扩展性,还会 ...

  4. 《mongoDB》概念-数据类型

    一:概念 - mongoDB 是一个面向文档的数据库,而不是关系型数据库. - 摘自<mongoDB 权威指南 第2版>第3页 二:数据类型 - null - 用于表示空值或者不存在的字段 ...

  5. 第04章:MongoDB基本概念

    ① 数据库 MongoDB的一个实例可以拥有一个或多个相互独立的数据库,每个数据库都有自己的集合   集合 集合可以看作是拥有动态模式的表   文档 文档是MongoDB中基本的数据单元,类似于RDB ...

  6. MongoDB快速入门学习笔记2 MongoDB的概念及简单操作

    1.以下列举普通的关系型数据库和MongoDB数据库简单概念上的区别: 关系型数据库 MongoDB数据库 说明 database database 数据库 table collection 数据库表 ...

  7. MongoDB基本概念和安装配置

    基本概念 MongoDB直接存储JSON. 有了NoSQL数据库之后,可以直接在业务层将数据按照指定的结构进行存储. NO SQL NoSQL 1 数据库 数据库 2 表 集合 3 行 文档 4 列 ...

  8. SpringBoot中MongoDB注解概念及使用

    spring-data-mongodb主要有以下注解 @Id 主键,不可重复,自带索引,可以在定义的列名上标注,需要自己生成并维护不重复的约束.如果自己不设置@Id主键,mongo会自动生成一个唯一主 ...

  9. MongoDB 基本概念

    MongoDB和关系型数据库的对应关系 关系数据库 MongoDB 数据库   database 数据库   database 表格  table 集合  collection 行  row 文档  ...

随机推荐

  1. nuint笔记

    注意:单元测试中,Case 与 Case 之间不能有任何关系 测试方法不能有返回值,不能有参数,测试方法必须声明为 public [TestFixture] //声明测试类 [SetUp] //建立, ...

  2. Linux下的段错误(Segmentation fault)

    Linux开发中常见段错误问题原因分析 1 使用非法的内存地址(指针),包括使用未经初始化及已经释放的指针.不存在的地址.受系统保护的地址,只读的地址等,这一类也是最常见和最好解决的段错误问题,使用G ...

  3. PHP echo 即时输出

    header(“Content-type:text/html;charset=utf-8″); #设置执行时间不限时 set_time_limit(0); #清除并关闭缓冲,输出到浏览器之前使用这个函 ...

  4. System.ArgumentOutOfRangeException: 指定的参数已超出有效值的范围

    GridView指定的参数已超出有效值的范围GridView在更新过程中异常详细信息: System.ArgumentOutOfRangeException: 指定的参数已超出有效值的范围.参数名:v ...

  5. CSS-页面布局

    介绍 几个实现多栏布局的方法.主要介绍使用内部div来创建浮动的栏. 多栏布局有三种基本的实现方案:固定宽度.流动.弹性. 固定宽度布局的大小是随用户调整浏览器窗口大小而变化,一般是900至1100像 ...

  6. 记一次未解决的异常:java.lang.NoClassDefFoundError: net/sf/json/JSONObject

    原因:Jetty会导致这个问题,Tomcat可以正常启动   一.异常产生现象 使用json-lib转换实体类/字符串,跑单元测试没问题,但是启动jetty后调用JSONArray.fromObjec ...

  7. call_user_func函数

    <?php function funa($b,$c) { echo $b; echo $c; } call_user_func('funa', "111","222 ...

  8. JAVA课程实验报告 实验三 敏捷开发与XP实践

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计  班级:1353  姓名:韩玉琪  学号:20135317 成绩:             指导教师:娄嘉 ...

  9. Action类中获取request等对象的方法

    struts2中的action类中,SevletActionContext可以获取

  10. 解决IE上登陆oracle OEM时报:“证书错误,导航已阻止”的错误

    今天在IE上登陆OEM时,报证书错误,导航已阻止,我选择:继续浏览此网站(不推荐),但是点了之后还没有反应,在网上搜了很多,原因基本都是windows的问题,最后发现问题是:oracle oem证书的 ...