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. JS动态获取数据

    JS访问数据,有实时获取数据的时候,请加上时间戳 如:'&stampflag=' + Math.round(new Date().getTime() / 1000); 因为有的浏览器(如IE9 ...

  2. TRUNCATE 删除表,无法回退。默认选择为整个表的内容,所以不能加条件。

    TRUNCATE 删除表,无法回退.默认选择为整个表的内容,所以不能加条件.DELETE 删除表,可以回退.可以带where 条件.建议使用delete.但是TRUNCATE 删除表数据比delete ...

  3. codeforces 360 C - NP-Hard Problem

    原题: Description Recently, Pari and Arya did some research about NP-Hard problems and they found the  ...

  4. Mysql 与日期和时间相关的函数

    目录: 常用日期函数 时间加减函数 date_forma函数 1. 常用日期函数 now() current_timestamp() sysdate() 实例一: 从上图可以看出三个函数都是用来获取当 ...

  5. <a>标签的四种状态

    a:link  a:visited  a:hover   a:active

  6. OpenLDAP与phpldapadmin的搭建

    最近一直在看LDAP的东西,把自己的记录下来,以后可以看看. 1:环境 1):关闭防火墙 service iptables stop 2):setenforce 0 vim /etc/sysconfi ...

  7. 运用CSS和JS写的大图轮播-带箭头

    <style type="text/css"> #datu { width:500px; height:400px; position:relative; margin ...

  8. 联想扬天 电脑 键盘改默认fn功能键

    联想扬天电脑改键工具 windows 8 windows8.1 64位版本:http://support1.lenovo.com.cn/lenovo/wsi/Modules/DriverDetail. ...

  9. MVC学习(四)几种分页的实现(2)

    在第一种分页方式中,仅仅实现了分页,但并未有体现出MVC的优势,没有体现出泛型编程思想,尤其在数据量很大的时候,分页十分缓慢,除此之外,还没有实现很好的封装,不是一个通用方法. 因此,我希望只要传入数 ...

  10. JavaScript求最大数最小数

    <!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...