Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
适用对象:
Mongodb
重要
你是否正在寻找一种数据库解决方案,以应对需要高扩展性、99.999% 可用性服务级别协议(SLA)、即时自动扩展和跨多个区域的自动故障转移的场景? 请考虑使用 Azure Cosmos DB for NoSQL。
本文介绍如何在 Azure Cosmos DB for MongoDB 中预配吞吐量。 可以对集合或数据库预配标准(手动)或自动缩放吞吐量,并在数据库中的集合之间共享它。 你可使用 Azure 门户、Azure CLI 或 Azure Cosmos DB SDK 来预配吞吐量。
注释
对于大多数工作负荷,不建议使用共享数据库吞吐量。 尽管它在某些场景中可以简化预配,但在多个集合之间共享吞吐量可能会导致不可预测且不可取的性能表现和扩展行为。 由于同一数据库共享分区中的集合,因此缩放数据库吞吐量以支持大型或不断增长的集合可能会触发重新分区较小的并置集合,将它们分散在过多的分区中。 建议在集合级别配置吞吐量。 了解这些权衡的高级方案的客户仍可使用 Azure Cosmos DB SDK 以编程方式创建和管理共享数据库吞吐量。
如果使用其他 API,请参阅 API for NoSQL,API for Cassandra,API for Gremlin 文章来预配吞吐量。
Azure 门户
登录到 Azure 门户。
创建新的 Azure Cosmos DB 帐户,或选择现有的 Azure Cosmos DB 帐户。
打开“数据资源管理器”窗格,然后选择“新建集合” 。 接下来,请提供以下详细信息:
- 表明要创建新数据库还是使用现有数据库。
- 输入集合 ID。
- 输入分区键值(例如
ItemID)。 - 输入要预配的吞吐量(例如,1000 RU)
- 选择“确定”。
注释
对于大多数工作负荷,我们建议在集合级别而不是数据库级别预配吞吐量。 如果有需要共享数据库吞吐量的高级方案,则可以使用 Azure Cosmos DB SDK 以编程方式创建它。
注释
如果要在配置了 Azure Cosmos DB for MongoDB 的 Azure Cosmos DB 帐户中的容器上为吞吐量进行预配,请使用 myShardKey 作为分区键路径。
.NET SDK
// refer to MongoDB .NET Driver
// https://docs.mongodb.com/drivers/csharp
// Create a new Client
String mongoConnectionString = "mongodb://DB AccountName:Password@DB AccountName.documents.azure.cn:10255/?ssl=true&replicaSet=globaldb";
mongoUrl = new MongoUrl(mongoConnectionString);
mongoClientSettings = MongoClientSettings.FromUrl(mongoUrl);
mongoClient = new MongoClient(mongoClientSettings);
// Change the database name
mongoDatabase = mongoClient.GetDatabase("testdb");
// Change the collection name, throughput value then update via MongoDB extension commands
// https://docs.azure.cn/cosmos-db/mongodb-custom-commands#update-collection
var result = mongoDatabase.RunCommand<BsonDocument>(@"{customAction: ""UpdateCollection"", collection: ""testcollection"", offerThroughput: 400}");
Azure 资源管理器
Azure 资源管理器模板可用于在数据库或容器级资源上为所有 Azure Cosmos DB API 预配自动缩放吞吐量。 有关示例,请参阅 Azure Cosmos DB 的 Azure 资源管理器模板。
Azure CLI
Azure CLI 可用于在数据库或容器级资源上为所有 Azure Cosmos DB API 预配自动缩放吞吐量。 有关示例,请参阅用于 Azure Cosmos DB 的 Azure CLI 示例。
Azure PowerShell
Azure PowerShell 可用于在数据库或容器级资源上为所有 Azure Cosmos DB API 预配自动缩放吞吐量。 有关示例,请参阅适用于 Azure Cosmos DB 的 Azure PowerShell 示例。
后续步骤
请参阅以下文章,了解如何在 Azure Cosmos DB 中预配吞吐量:
- Azure Cosmos DB 中的请求单位和吞吐量
- 尝试为迁移到 Azure Cosmos DB 进行容量规划? 可以使用有关现有数据库群集的信息进行容量规划。
- 若只知道现有数据库群集中的 vCore 和服务器数量,请阅读使用 vCore 或 vCPU 估算请求单位
- 如果您知道当前数据库工作负荷的典型请求速率,请阅读有关使用 Azure Cosmos DB 容量规划工具来估计请求单位的文章