【问题标题】:How do I spread my RU/s across multiple regions in CosmosDB (python)?如何在 CosmosDB (python) 中跨多个区域分布我的 RU/s?
【发布时间】:2019-11-14 03:49:42
【问题描述】:

我正在使用 PyMongo 通过以下方式将文档插入 CosmosDB:

from pymongo import MongoClient

db_entry = {"id": 1, "partitionKey": 5}
cdb_client = MongoClient(COSMO_URI).events.face_events_unlimited
cdb_client.insert_one(db_entry)

我的 Azure 门户指标页面如下所示:

其中一个区域列出 2.02 kRU/s,另一个列出 0 RU/s

如何开始使用其他区域?

我在 2 个区域中配置了 3000 RU/s...这是否意味着我应该能够在每个区域中放置 3000,还是总共有 3000 RU/s?

如何分离我的插入物,以便它们均匀分布在 2 个区域?

【问题讨论】:

    标签: azure-cosmosdb azure-cosmosdb-mongoapi


    【解决方案1】:

    1.如何开始使用其他区域?

    2.我在 2 个区域中配置了 3000 RU/s...这是否意味着我应该能够在每个区域中放置 3000,或者总共有 3000 RU/s?

    如果您在 Cosmos 容器(或数据库)上预配“R”RU,Cosmos DB 会确保在与您的 Cosmos 帐户关联的每个区域中都有“R”RU。每次向帐户添加新区域时,Cosmos DB 都会自动在新添加的区域中预配“R”RU。保证对您的 Cosmos 容器执行的操作在每个区域中获得“R”RU。

    你可以从这个link查看语句。

    3.如何分离我的插入物,使它们均匀分布在 2 个区域?

    如果您设置多写区域,我认为它是自动配置的。您还可以在上面的链接中看到官方声明:

    您不能有选择地将 RU 分配给特定区域。在 Cosmos 容器(或数据库)上配置的 RU 在与您的 Cosmos 帐户关联的所有区域中进行配置。

    【讨论】:

    • 你指的是RU分布。不是写是如何完成的
    【解决方案2】:

    您可以构建 2 个不同的客户端(每个区域一个,假设您只有 2 个区域)。 .NET sdk 允许指定你正在使用的区域,不确定 python sdk

    关于第二个问题 - 意味着您在每个区域有 3000 RU/s,因为每个区域会增加 100% 的成本,因此 1 个区域成本 x,2 个区域成本 2x,3 个区域成本 3x

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多