【发布时间】:2019-04-07 08:36:57
【问题描述】:
有没有什么方法可以选择性地索引辅助副本集集合字段,因为我不需要主集合上的那些索引?
例如。我有 Product 集合,其中 Product-Category 作为字段。我不想在主节点上索引这个字段,我只希望在副本集辅助节点上建立索引,因为我只会从辅助节点读取数据。
【问题讨论】:
有没有什么方法可以选择性地索引辅助副本集集合字段,因为我不需要主集合上的那些索引?
例如。我有 Product 集合,其中 Product-Category 作为字段。我不想在主节点上索引这个字段,我只希望在副本集辅助节点上建立索引,因为我只会从辅助节点读取数据。
【问题讨论】:
我意识到这是一个旧线程,但我最近正在研究同一主题。我想针对我的实时数据运行数据报告工具,我假设我需要不同的索引,但我不想以影响服务应用程序请求的主节点性能的方式引入它们(因为更多的索引会增加内存消耗,并且我相信会影响写入性能,具体取决于所选的 MongoDB Write Concern,消费应用程序可以看到)。
我遇到了两件事:
这对我来说感觉像是 hack,但有些人建议使用配置为永远不会成为主节点的隐藏辅助节点,他们暂时将其从副本集中取出,添加额外的索引,然后添加它回到副本集 - Different indexes on different replica set members
并且该 stackoverflow 发布还引用了以下开放的 MongoDB 增强请求“允许副本集 p=0 节点上的不同索引”https://jira.mongodb.org/browse/SERVER-3664。请投票!
皮特
【讨论】: