DocumentDB提供的这个新的Change Feed功能非常酷。但是,文档说明:
对文档的每次更改仅在更改Feed中显示一次。更改日志中仅包含给定文档的最新更改。可能无法进行中间更改。
基本上,如果文档来自修订版A-> B-> C,当轮询更改订阅源时,我们只会得到“C”。 - 我有一种情况,我想看到“A”和“B”。
我知道一些现有的模式可以解决这个问题,但我真的希望利用这个新的Change Feed功能。我希望它会返回A,B和C.
此功能的目的是让“工作人员”非常频繁地轮询服务吗?显然,工人投票越频繁,他们越不可能跳过对文档的修订。但是,我不希望因此对集合的性能产生负面影响。
答案 0 :(得分:10)
DocumentDB团队成员。我开始说:请在此提出/投票支持文档的所有版本/代:http://feedback.azure.com/forums/263030-documentdb
支持最新版本的Change Feed的目的有两个原因:
您已经提到您已经了解了解决方法,但我只是为了其他人的利益而声明这一点:这个问题可以通过反转存储在DocumentDB中的内容来解决。也就是说,您可以通过创建新文档将所有版本存储在DocumentDB中,然后通过更新最新版本通过更改源合并它们。
要回答评论中的问题,必须绝对使用更改Feed而不是按时间戳查询,原因如下: