MongoDB 聚合框架基本使用操作中为什么只有左外连接?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

MongoDB 聚合框架基本使用操作中为什么只有左外连接?

不变的狗子 2021-09-28 12:00:31 54

MongoDB 聚合框架基本使用操作中为什么只有左外连接?

作用为什么使用 mongodb操作使用 连接操作mongodb c++使用操作
分享到
取消 提交回答
全部回答(1)
  • 开发者小助手
    2021-09-28 12:01:44

    ·原因一:反范式设计; ·原因二:读取效率低下; ·原因三:分布式环境; image.png

    MongoDB 里面连接 Join 操作只有左外连接,因为 Join 这种操作上是违反 MongoDB设计的初衷的,这样操作 经常要对两个表的不同数据进行连接操作,这些数据在 物理存储的时候,通常不是在相邻的区域里面,读取的 效率比较低。 此外 MongoDB 是一个分布式的环境,校验操作的左 右两边如果都是一个分片的表,当进行 Join 操作的时 候,左边有一个又有一条数据,它可能在分片一上要连 接的一个数据可能在分片二上,下一条数据可能又是另 外一种情况,这种情况下数据库很难保证整个操作的性 能。 基于这些原因,MongoDB 只提供左外连接,并且要求 From 表不能是分片表,左边的表主表可以是分片表, 在 SQL 里面会使用类似于左边这样的一个查询语句。

    资源来源:电子书《玩转MongoDB从入门到实战》,下载链接:https://developer.aliyun.com/topic/download?id=1060

    0 0
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

相似问题
最新问题
推荐课程