我想"重建"我的原型收集,这意味着删除所有现有文档并从头开始填充。 问题是,由于不支持事务,因此集合为空的时间间隔很小,这是我想要避免的。
有没有办法在原子问题上执行此类操作?那么集合是空的没有意义吗?
答案 0 :(得分:1)
您可以使用其他名称构建新集合,然后使用rename命令重命名新集合并删除现有集合(使用dropTarget=True
选项)。
但有几点需要注意:
renameCollection
在操作期间阻止所有数据库活动。renameCollection
与分片集合不兼容。renameCollection
操作未完成,目标集合和索引将无法使用,需要手动干预才能清理。您可以在official docs找到更多信息。