gpt4 book ai didi

database - 如何处理跨多个客户端在 Couch 中删除数据库?

转载 作者:搜寻专家 更新时间:2023-10-30 20:35:06 26 4
gpt4 key购买 nike

在 CouchDB 中,有时您最终可能会在数据库中拥有比事件文档更多的已删除文档。一段时间后,这变得有些不理想,因为您同步的已删除文档数据比其他任何数据都多。

The official documentation recommends periodically destroying the databases in order to get around this ,但我注意到执行此操作时发生的所有事情是客户端具有数据库的本地副本(例如,如果您有一个名为“用户名”的数据库,旨在通过 Pouch 复制到客户端设备),当它看到空白数据库,重新填充备份,删除文件记录和所有。

除了每次都更改数据库名称之外,是否有任何方法可以向其他 Couch 实例发出信号,告知它们不应重新填充新的、干净的数据库,而是将其完全作为一个新数据库?或者,事实上,任何其他解决方案?

最佳答案

是的,如果您有双向复制,那么“另一端”会将所有已删除的文档复制回新数据库。我能想到的唯一两个选择是拥有一个新数据库(使用新名称,这就是您链接到的文档可能的意思),或者使用 filtered replication所以客户端不会推送已删除的文档(或者不会推送超过某个时间点的已删除文档)。

这些选项中的后者比前者复杂得多。

关于database - 如何处理跨多个客户端在 Couch 中删除数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44022679/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com