我正在尝试设计一个用户协作构建存储库的应用程序,例如Quora:
我想了解如何设计合并操作。
问题是
合并发生时应该执行哪些操作,如果合并的主题被添加到其下的所有问题中,或者保留所有内容,只需添加合并主题的引用
当显示与主题相关的答案时,搜索主题的引用ID并循环合并的引用ID。
答案 0 :(得分:0)
这样做的方法是如何开发文档管理系统。 因此,我们的想法是在每次合并完成后编译并提供文档。
这样,只有一个主题副本存在,并在任何系统正在进行搜索,存储或负责分发时编入索引。
对主题的引用应该保持独立,并且在每次合并时,都应该重新创建文档
由于最终的一致性在这些场景中很重要(因此文档可以始终保留并从缓存中引用/取消引用)
希望这会有所帮助。请查看twitter architechture以获取接近实时的数据 http://highscalability.com/blog/2013/7/8/the-architecture-twitter-uses-to-deal-with-150m-active-users.html