风间影月 · 2020年02月11日

MongoDB-1 入门

基础概念

MongoDB 是非关系型数据库,也就是nosql,存储json数据格式会非常灵活,要比mysql更好,同时也能为mysql分摊一部分的流量压力。另外呢,对于非事务的数据完全可以保存到MongoDB中,这些数据往往也是非核心数据。

以下是MongoDB和数据库以及ElasticSearch的术语对比:

数据库ElasticSearchMongoDB
databasees库database
table 表index 索引collection 数据集合
row 行(记录)document 文档(json)document 文档(json)
column 字段列field 域field 域
index 索引-index 索引
join 表关联查询--
pk 主键_id_id
  • MongoDB可以创建多个数据库(同mysql)
  • 一个数据库可以创建多个collection(同mysql创建多表)
  • 一个集合可以包含很多文档数据(同mysql一张表包含很多行记录)

我们可以通过如下代码片段来更好的理解MongoDB的数据对比,假设这张表中总记录有3条:

UserList: [
    {
        userId: "1001",
        username: "lee",
        age: 18,
        sex: "boy"    
    },
    {
        userId: "1002",
        username: "jay",
        age: 20,
        sex: "boy"    
    },
    {
        userId: "1003",
        username: "jolin",
        age: 19,
        sex: "girl"    
    }
]

如上述代码中:

  • UserList是一个collection,在mysql中可以当做是一张表
  • UserList中的每个{}都是一个json对象,他们称之为document文档,在mysql中称之为行记录
  • userId、username、age、sex 这些都是field 域,在MySQL中称之为column列字段

文章比较短,下一遍会来讲一下怎么搭建运行的

推荐阅读
关注数
1
文章数
5
互联网后端开发工程师,技术经理,项目经理,架构师,目前主要以分布式系统,集群,高可用负载均衡为主要方向 PMP 认证, SUN 认证, 微软认证
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息