MongoDB 的一些坑

  • 由于是文档型数据库,不像关系型数据库一样有规范的field。举个贴近生活的例子, 关系型数据库就像是一张Excel表格,所有的列都是统一的;而MongoDB就像是把json 存在一个txt文件里。用成怎样全靠自觉啊!!!

  • 存储空间吃了就不吐出来。MongoDB在使用的时候发现,空间在吃了以后,除非执行 repairDataBase 而且MongoDB会为每一个item都存一个 _id,这个_id包含了时间戳等信息。也是要 占用一定空间的。另外MongoDB的journal没有4G空间还起不来。。。

  • 最低只有collection级别的锁。https://docs.mongodb.com/manual/faq/concurrency/ 这个由于目前做的东西没有高并发的时候,所以暂时还无法说这个级别的锁很怎么样。

  • 建索引时会阻塞数据库 https://docs.mongodb.com/manual/core/index-creation/#index-build 所以建索引的时候一定要先看看是否已经有过。当然我们可以增加 background 选项, 这样建立索引的时候MongoDB仍然可用。


更多文章
  • Vim YouCompleteMe使用LSP(以dart为例)
  • flutter webview加载时显示进度
  • SQLAlchemy快速更新或插入对象
  • 修复Linux下curl等无法使用letsencrypt证书
  • 欣赏一下K&R两位大神的代码
  • MySQL的ON DUPLICATE KEY UPDATE语句
  • 使用microk8s快速搭建k8s
  • Python中优雅的处理文件路径
  • Go语言MySQL时区问题
  • 我的技术栈选型
  • 为什么我要用Linux作为桌面?
  • disqus获取评论时忽略query string
  • MySQL性能优化指南
  • 网络编程所需要熟悉的那些函数
  • DNSCrypt简明教程