Cosmos DB中针对文档的目标写入是否比较大的写入便宜?

时间:2018-09-26 18:55:25

标签: azure-cosmosdb

如果我在Cosmos DB中有一个巨大的文档,比如说1MB左右(所以50% as big as current max),那是一个相当复杂的对象模型...

  • 针对目标嵌套属性的目标写入(即部分更新)与完整的文档重写相比,价格昂贵?
  • 是否存在任何级别,比起爆破新的[尽管具有与以前相同的数据]文档,“不完全”重写会便宜吗?
  • Cosmos所做的甚至不及完成资源更新吗? ({My sources say no,并且某些针对性的谷歌搜索并没有产生任何反作用。)

也就是说,尝试选择性地更新现有文档是否有任何优势,如果可以的话,我该如何利用和衡量这一优势?

  

动机::如果没有一种有效地更新的方法,并且我想进行大量写入操作-与读取操作(相对比例)一样多-听起来我可能想写入许多较小的文档,后来我最终将它们合并到icier /更具持久性的存储中。

     

如果有一种方法可以对文档进行部分更新,则不必像这样过度设计。

1 个答案:

答案 0 :(得分:1)

Cosmos当前不支持PATCH(或目标写入,因为我相信您正在调用它们)。因此,您唯一的选择是替换整个文档。不过,我们正在调查这种支持。

如果您要进行大量的小更新,则值得考虑如何将文档分成较小的块。我喜欢的一种方法是拥有一个链接到“子”文档的“父”文档。这也使您可以将内容扩展到2MB以上,因为该内容不受每个文档的限制。