如何解决CosmosDB TransactionaBatch 多个容器
我正在使用 WPF .NET Core 开发 Windows 应用程序,我需要在我的 Cosmos DB
数据库中执行查询,我需要从主要库存中删除一些项目并将其放在不同的存储中,无需假设从 stock Container
推导出项目的查询失败,storage Container
中的更新也必须失败,反之亦然。
我在 here 中阅读了 CosmosDB TransactionalBatch
,它看起来正是我想要的。但是,它看起来只适用于同一个容器中的查询,是否可以执行两个 TransactionalBatch
操作并将它们相互链接,如果没有,还有其他方法吗?
解决方法
Cosmos DB 中的事务范围限定为逻辑分区,而不是容器。并且同一事务中所有项目的分区键必须共享相同的值。
如果您发现必须跨两个容器执行大量操作,您可能需要查看您的整体模型和设计。即使实体具有不同的架构,相关数据也存储在相同的容器和分区键中的情况并不少见。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。