MongoDB Shard键 - 在每个查询中强制执行

时间:2014-09-01 10:56:01

标签: mongodb spring-data-mongodb

如果我们使用复合分片键,说{a,b}是否有可能在java驱动程序级别的查询中不包含这些字段的任何查询中抛出错误。即在执行查询之前的任何回调/生命周期事件...就像AbstractMongoEventListener - 这里我们有onAfterLoad和onAfterConvert的选项,但我们的要求是在执行查询之前...在java驱动程序级别的东西

1 个答案:

答案 0 :(得分:0)

我理解为什么你想要这个功能(如果查询甚至不包括单个分片键作为其标准的一部分,那么它将导致"分散和收集"那种导致显着性能的查询降解)。但API的最佳实践表明,API应该设计用于单一目的并且是通用的,如果我们倾向于将此功能添加到Java驱动程序,那么它将倾向于施加可能不需要的附加约束。因此没有开箱即用的API为您做到这一点。

What you can do to make it work - Write a wrapper on top of this API with the additional capability.