gpt4 book ai didi

azure - 如何正确使用 CosmosDb 处理大于 2 Mb 的文档

转载 作者:行者123 更新时间:2023-12-02 07:25:20 25 4
gpt4 key购买 nike

我使用 Azure CosmosDb 作为我的应用程序的数据库。

假设我需要在数据库中保存所有国家、城市和街道。所以,我会有一个看起来像这样的项目:

{
country: Brazil,
size: 1000,
population: 200000,
cities: [
{
city: Rio
population: 8000
streets: [
{
name: A,
postalCode: 12345
},
{
name: B,
postalCode: 34567
}
],
...

但是,当我谈论所有国家、城市和街道时,这将成为一个巨大的项目,大于 cosmosDb 允许的 2Mb。

那么,处理这个问题的正确方法是什么?我应该将不同集合中的城市和街道分开吗?但是,使用不同的集合有很多缺点,因为在更新两个不同的集合时无法使用存储过程或保证事务。

最佳答案

您可以将它们放入同一个集合中,只需使用主键在逻辑上将它们分开(这在技术上不是必需的,只是更好)。对于您的数据集,按城市(或者不太可能是国家)进行分区可能是有意义的。您不必在同一集合中具有相同的文档,尽管它们看起来几乎相同。

关于azure - 如何正确使用 CosmosDb 处理大于 2 Mb 的文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56227690/

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