mongodb数据库在分片时可用吗?

mongodb数据库在分片时可用吗?,mongodb,sharding,Mongodb,Sharding,我正在mongodb中共享一个大型数据库。因为集合中的文档数量超过100000000,所以需要很长时间才能进行碎片分割,对吗?我现在正在为这个数据库执行切分操作,而命令行正处于等待状态。如何检查碎片操作是否正常处理?执行以下步骤(订单事项): 设置shard MongoDB服务器 然后,对获得的数据库(集合)执行分片操作 文件超过100000000份左右……) 事实上,这是因为我应该在将所有数据填充到数据库之前对数据库进行分片。我永远不应该将所有数据填充到分片配置就绪但尚未启用分片的数据库中。在

我正在mongodb中共享一个大型数据库。因为集合中的文档数量超过100000000,所以需要很长时间才能进行碎片分割,对吗?我现在正在为这个数据库执行切分操作,而命令行正处于等待状态。如何检查碎片操作是否正常处理?

执行以下步骤(订单事项):

  • 设置shard MongoDB服务器

  • 然后,对获得的数据库(集合)执行分片操作 文件超过100000000份左右……)


  • 事实上,这是因为我应该在将所有数据填充到数据库之前对数据库进行分片。我永远不应该将所有数据填充到分片配置就绪但尚未启用分片的数据库中。在这种情况下,我运行sh.enableSharding(“数据库名称”)和sh.shardCollection(),终端将陷入永久等待。但是,如果我在空数据库上运行sh.enableSharding(“数据库名称”)和sh.shardCollection(),然后将数据填充到其中,则在插入数据时,数据可以分片到不同的分片中。
    嗯,另一个经验。

    当你指的是“分片”时,你实际上指的是在多个分片之间分发文档时的“平衡”吗?从哪里填充数据?你不能在设置shard db server之后再做吗?Amol提出了一个很好的问题。我发现在我为一个已经填充了数据的数据库设置shard之后,mongodb将陷入漫长的等待。但在我清理数据库、设置碎片并重新填充数据后,mongoDB运行良好。我现在可以清楚地看到碎片的状态。谢谢。如果方便的话,请投我一票,好吗?对于Asya,是的,我想是的。但是由于数据非常大,我迫不及待地猜测mongodb是在分发数据还是已经死亡。因此,我重新启动mongodb并清除数据库,在它有任何数据之前设置碎片,然后重新填充数据。这样,它就工作了。如果方便的话,投我一票,好吗?@Amolkulkarni你的问题绝对正确。是的,我不应该在填充数据之前进行切分,我必须在填充数据之前进行切分。我这样做了,而且长时间的等待从未发生过。