首页 > 解决方案 > 在 MongoDB 中,我可以在每个分片上为 $lookup 创建非分片集合吗?

问题描述

我一直在尝试$lookup在不允许的 mongos 碎片上使用。

如果我创建一个非分片集合,我知道它默认只在主分片上创建。但是,$lookup仅使用从分片到主分片效率不高。

因此,我一直在想的是在每个分片上创建相同的集合,然后使用配置中的相同分片规则专门插入到该分片上。

然后,如果我$lookup在本地集合上使用分片集合,它将实现我的目标。

我正在搜索这个,发现关于这个 jira 的评论与下面的问题SERVER-29159相同。

对吉拉的评论

有没有办法实现我刚才解释的内容?

从逻辑的角度来看,它应该是可以实现的,但是连接到分片的方式是通过路由器,所以我相信除非 mongodb 在路由器上提供这样的功能,否则这是不可能的......至少请告诉我如果你不可能的话很了解mongo。

PS我spring-data-mongodb作为客户使用。

标签: mongodbspring-data-mongodb

解决方案


推荐阅读