gpt4 book ai didi

Azure Cosmos DB 更新模式

转载 作者:行者123 更新时间:2023-12-03 22:37:16 27 4
gpt4 key购买 nike

我最近开始在一个项目中使用 Cosmos DB,但遇到了一些设计问题。来自 SQL 背景,我知道相关数据应该嵌套在 NoSQL DB 的文档中。但这确实意味着文档可能会变得相当大。

由于不支持部分更新,当您想要更新文档上的单个属性时,要实现的最佳设计模式是什么?

我是否应该读取整个文档服务器端、更新值并立即写回文档以便执行更新?如果文档很大,这似乎是有问题的,如果所有数据都是嵌套的,那么它们不可避免地会如此。

如果我采用制作许多较小文档并根据 ID 推断关系的方法,我认为这将立即解决读/写更新问题,但感觉我违背了 NoSQL 的概念,本质上我是构建关系数据库。

谢谢

最佳答案

锁定和闩锁。如果部分更新成为可能,这就是需要发生的事情。在锁定的情况下保持 <15 毫秒的写入延迟 SLA 是一个困难的工程问题。

This seems problematic if the documents are large which they inevitably would be if all your data is nested.

定义您的恐惧 - 烧毁的请求单元、应用程序主机内存、入口/导出网络流量?您认为这是一个问题,但没有说明具体结果。我并不是说你错了或者怀疑部分更新方法的效率,我只是说这个论点很薄弱。

通常您不想在 NoSQL 中JOIN任何内容,所以我完全同意您在最后一段的看法。

关于Azure Cosmos DB 更新模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45479299/

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