【发布时间】:2019-01-22 02:14:46
【问题描述】:
实现唯一性和分片的最佳解决方法是什么?例如,我们希望根据用户自己选择的唯一 username 对 user 集合进行分片,并且它是不可变的
我认为最好的解决方案是散列阴影,但不幸的是我们不能强制散列索引的唯一性
那么远程分片好吗?有推荐的解决方案吗?
【问题讨论】:
实现唯一性和分片的最佳解决方法是什么?例如,我们希望根据用户自己选择的唯一 username 对 user 集合进行分片,并且它是不可变的
我认为最好的解决方案是散列阴影,但不幸的是我们不能强制散列索引的唯一性
那么远程分片好吗?有推荐的解决方案吗?
【问题讨论】:
如果您确实需要此字段(用户名)的完全唯一性 - 您可以将其作为“普通”(单字段 - 升序/降序)分片键。
在这种情况下,每个文档都是“单独的”,因为它根本没有批量要求。
但是,它会使您的索引更大,而通常散列分片会这样做(是的,您无法确保唯一性,但除非您有非常特殊的情况 - 这不应该是一个真正的问题)
【讨论】: