MongoDB Sharded cluster:仅插入一个分片

时间:2014-12-09 17:54:26

标签: mongodb

我们正在使用包含6个分片的群集。

该集合使用非散列键。

文档相当大,我们的chunk-size设置为 512MB

我们的群集中有两个巨大的批量插入,但所有内容都插在一个分片上。 这导致120%有效锁定,而其他碎片在5%锁定时冷却。

我认为批量插入仅附加最后一个块,因为插入是有序的。由于重载,在插入物结束之前不会重新分布块。

批量插入重新分发后效果很好。

MongoDB版本是2.6.5。

如何配置配置服务器以自动分发批量插入?

如果需要更多信息,我会编辑帖子。

谢谢大家!!!

如下所述:

预拆分是我们的最佳解决方案。这允许我们在插入之前均匀分布整个集合,因为我们知道密钥空间!谢谢!

1 个答案:

答案 0 :(得分:1)

听起来您的分片键是单调documentation has a large section about bulk insert in sharded environments

基本上,

  1. pre-split the collection
  2. 或插入不同的mongos(不适用于初始插入)
  3. 和/或确保您的分片键不会单调增加(对于非散列集合,这通常是一个好主意)。