我有一个系统拱门:主数据库名为master,用户数据库名为user1和user2。我正在将一个文档从主数据库复制到user1和user2数据库。然后,用户在他们的数据库中分别修改该文档(例如,user1添加tags:[1, 2],user2添加tags:[3, 4]字段)。现在,我想从用户数据库复制回主数据库,并将新添加的tags字段合并到tags:[1,2,3,4]中。此外,我可能需要在复制上运行一些逻辑,以使结果标记为tags:[1,2,4]。
什么是正确的方法?
发布于 2012-04-24 13:28:56
你没有说你可能想要如何在你的最终结果中删除标签"3“,所以很难给出一个完整的答案。
在CouchDB文档中有很多关于处理这类场景的各种方法的有用信息。Designing how you store the data和how you use the stored data to resolve conflicts,其中包括以下“使用冲突解决方案提取文档的建议代码”
它还指出“这可以在每次读取时完成(在这种情况下,您可以将应用程序中的所有GET调用替换为对执行上述操作的库的调用),或者作为您的清理程序代码的一部分。”然后给出了一个完整的Ruby示例。
这能回答你所有的问题吗?
发布于 2012-04-23 04:52:05
这可以通过复制+冲突来简单地解决。有一个主外部进程,它检查冲突,合并标记,然后编写新文档。
https://stackoverflow.com/questions/10135820
复制相似问题