MongoDB 教程

  • MongoDB

    MongoDB是一个开源文档数据库和领先的NoSQL数据库。MongoDB用C++编写。MongoDB是一个跨平台的,面向文档的数据库,可提供高性能,高可用性和易扩展性。MongoDB致力于集合和文档的概念。本教程将使您对创建和部署高度可扩展且面向性能的数据库所需的MongoDB概念有很好的了解。
  • 数据库

    数据库是用于收集的物理容器。每个数据库在文件系统上都有其自己的文件集。一台MongoDB服务器通常具有多个数据库。
  • 集合

    集合是一组MongoDB文档。它等效于RDBMS表。集合存在于单个数据库中。集合不强制执行架构。集合中的文档可以具有不同的字段。通常,集合中的所有文档都具有相似或相关的目的。
  • 文档

    文档是一组键值对。文档具有动态架构。动态模式意味着同一集合中的文档不需要具有相同的字段或结构集,并且集合文档中的公共字段可以保存不同类型的数据。下表显示了RDBMS(关系型数据库管理系统)术语与MongoDB的关系。
    RDBMS MongoDB
    数据库 数据库
    集合
    元组/行 文档
    字段
    表联接 嵌入式文件
    主键 主键(MongoDB本身提供的默认键_id)
    数据库服务器和客户端
    mysqld/Oracle mongod
    mysql/sqlplus mongo
  • 样本文档

    以下示例显示了博客站点的文档结构,它只是一个逗号分隔的键值对。
    
    {
       _id: ObjectId(7df78ad8902c)
       title: 'MongoDB Overview', 
       description: 'MongoDB is no sql database',
       by: '菜鸟教程',
       url: 'http://www.cainiaoya.com',
       tags: ['mongodb', 'database', 'NoSQL'],
       likes: 100, 
       comments: [  
          {
             user:'user1',
             message: 'My first comment',
             dateCreated: new Date(2020,1,20,2,15),
             like: 0 
          },
          {
             user:'user2',
             message: 'My second comments',
             dateCreated: new Date(2020,1,25,7,45),
             like: 5
          }
       ]
    }
    
    _id是一个12字节的十六进制数字,可确保每个文档的唯一性。您可以在插入文档时提供_id。如果您不提供,那么MongoDB将为每个文档提供唯一的ID。这12个字节的当前时间戳的前4个字节,后3个字节的计算机ID,后2个字节的MongoDB服务器的进程ID和其余3个字节都是简单的增量值。
  • 听众

    本教程适用于愿意通过简单的步骤学习MongoDB数据库的软件专业人员。它将阐明MongoDB的概念,并在完成本教程后,您将处于中级专业知识水平,从那里您将获得更高的专业知识水平。 在继续本教程之前,您应该对数据库,文本编辑器和程序执行等有基本的了解。由于我们将要开发高性能数据库,因此如果您对数据库的基本概念有所了解将是一个很好的选择。
    mongodb可视化管理工具推荐:robomongo