MongoDB Shard键选择

时间:2015-11-24 19:01:01

标签: mongodb mongodb-java

我的情况是,我不知道结构和结构是什么。 MongoDb中的集合领域。每个用户也会有多个单个数据库(如多租户数据库)。

我将在生产中部署Replicated分片群集。更好的机器优化,我在每个数据库的创建过程中基于每个数据库应用分片,同一个数据库下的每个集合将分片到不同的分片。现在在这种情况下我不确定哪个键是最好的选择,因为结构&将在每个DB下创建的集合字段将是未知的。由于DB的结构,Collection是未知的,我无法预测哪些类型的查询将在大多数时间使用。所以我想选择一个分片键,它可以满足分片键选择的所有条件,如:基数,查询隔离,单调递增,写缩放,易于整除。

这种情况下的解决方案是什么?

此外,如果我选择该集合下的所有字段以获取分片键以及哈希_id字段作为复合键,该怎么办?

1 个答案:

答案 0 :(得分:0)

创建分片键后,您无法对其进行编辑。 因此,一旦您清楚了解字段,您就可以随时将数据汇总到集合中。

分片后会自动进行重新平衡。