下载APP
登录
关闭
讲堂
算法训练营
Python 进阶训练营
企业服务
极客商城
客户端下载
兑换中心
渠道合作
推荐作者
当前播放: 07 | 实验:Hello World程序开发
00:00 / 00:00
标清
  • 标清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看

MongoDB高手课

共47讲 · 约500分钟
3288
免费
01 | 课程介绍
免费
02 | 内容综述
免费
03 | 认识文档数据库MongoDB
免费
04 | MongoDB特色及优势
免费
05 | 实验:安装MongoDB
06 | MongoDB基本操作
07 | 实验:Hello World程序开...
08 | 聚合查询
09 | 实验:聚合查询
10 | 复制集机制及原理
11 | 实验:搭建MongoDB复制集
12 | MongoDB全家桶
13 | 模型设计基础
14 | JSON文档模型设计特点
15 | 文档模型设计之一:基础设...
16 | 文档模型设计之二:工况细...
17 | 文档模型设计之三:模式套...
18 | 设计模式集锦

精选留言(10)

  • 2019-11-27
    如果我有两个字段a和b,希望对每个文档增加一个字段c=a-b. 试了一下用find. forEach然后每个文档执行一个uodate的话速度非常慢。有什么比较高效的方法吗?

    作者回复: 4.2可以做到:
    db.test.insert({a: 2, b: 3})
    db.test.updateMany({}, [{
        $set: {
            c: {
                $add: ["$a", "$b"]
            }
        }
    }])

    2
  • 2019-12-12
    python 3 的print改成方法了,要用print(client) 才行,print命令已经去除了

    作者回复: 好的谢谢提醒。

  • 2019-12-02
    mongodb的动态特性有缺点嘛?作为一个oracle dba感觉极其不适应。

    作者回复: 有一些值得注意的地方

    1) schema 管理会复杂, 你不能一下确定这个集合到底是什么结构。解决方案是使用Schema Validation 或者 JSON Schema来定义这个集合的严格结构。 JSON Schema类似于关系数据库的schema,但是不同的是如果你需要修改这个schema的话可以随时更改,理论上也不需要对已有数据做更新或者迁移。

  • 2019-11-19
    老师,请问python 的版本有什么限制么?

    作者回复: 我用的2.7,但是理论上Python 3也是okay的。

    1
  • 2019-11-18
    老师您好,我以前用的mssql,如果一个服务器上有多个数据库,想迁移数据库的时候直接考走对应的数据库文件就好。如果是mongodb,发现没有对应的文件,请问除了把数据导出还有别的办法吗?

    作者回复: mongodb 不能这么玩,只能用mongodump 或者 mongoexport,或者用迁移工具。

  • 2019-11-17
    请问下老师,比如在mysql批量插入,一次3000条左右比较合适,性能也不错,如果是mongodb,一次插多少条比较高效

    作者回复: 这个没有绝对值,通常和文档大小有关。如果在1KB以内的话,我会推荐用1000左右的batch size

  • 2019-11-15
    老师好,对于mongo副本集,如果有多个库,由于单集群达到瓶颈了,我想把一个库迁移出去,有什么方法吗,能达到像mysql主从实现吗?并且切换到新集群控制在切换ip的时间吗?

    作者回复: 如果可以停服务,可以用 mongodump -d xxx 方式
    如果不能停服,需要用一些工具:
    如果在阿里云,可以考虑mongoshake 工具
    MongoDB官方有mongomirror工具
    我们Tapdata也有一个工具,有免费3个月的使用期,如果只是一次性迁移够用了。

    1
  • 2019-11-15
    老师好,请问下,想删除多行数据,得对多行数据进行备份,有什么工具可以生成反向语句insert进行备份吗

    作者回复: 换一个思路。使用MongoDB Ops Manager可以实现任意时间点恢复 - 比如你3:00执行删除动作,4:00发现有问题想回滚,那么可以使用ops manager 把数据库回到3:00的时候。

    类似的事情可以用命令行方式做,但是就不是小项目了。

    反向生成insert的没有见过,但是自己实现应该很简单。

    1
  • 2019-11-14
    老师怎么不选java语言?后面案例也是python吗?

    作者回复: Python 语言最接近英语,也最合适演示。我可以考虑加入一些适当的Java示例在后续章节中。

    1
  • 2019-11-13
    老师,有mongo源码分析的课程吗

    作者回复: 这个没有在计划内哦,受众可能不够大。

    4