初学Mongo

mongo基本概念

我是基于菜鸟教程学习的, 详见菜鸟教程

概念

  1. 数据库: 每个数据库都有独立的权限, 集合.
  2. 集合: 一个或多个文档构成的整体, 文档组.
  3. 文档: 一个或多个域构成的整体, 类似于对象.
  4. 域: 文档的属性.

我的理解(举例可能不太恰当)

数据库相当于一个项目, 项目下有人, 每个人就是一个文档, 项目中分组, 如分前端组, 后端组, 需求组等, 每个组就是一个集合, 每个人都有属性, 如性别, 年龄等, 这个就是域.

与mysql, redis的比较

数据库分两种, 关系型和非关系型, 但其目的都是一致的, 用与存放大量数据, 如何保证每条数据的唯一性呢? 每条数据都有独属于自己的唯一标识, 相当于身份证, 找到这个身份证, 就找到这个人了. 这里有一个简单的映射关系: key = 主键, value=该条数据

  • 关系型数据库
    • mysql ,

    mysql 是表格式的, 就像一个excel表格, 每一行都是一个对象, 表中的每一列(属性)都必填(填空也算填), 如果加一列, 该表中所有行都必须得加一列.
    每一行据都是一个对象, 都有自己的作用域(表)

  • 非关系型数据库
    • mongo

    有点类似于mysql, 但有区别, 都是一个表, 但是mongo不限制列, 每一行数据都是自定义的(你完全可以将mongo当做关系型数据库玩).
    一个key对应该文档, 文档是json类型, 但是里面存多少个属性, 属性的形式又是如何, 这些都可以自定义

    • redis

    就是key-value形式, 在Redis中, key是唯一的, 但是value的数据形式却是随意的, 而且你可以设定key的过期时间, 且存取速度快.

Guess you like

Origin blog.csdn.net/weixin_41583053/article/details/122350929