使用 API 删除和重新创建数据库时,Azure Cosmos DB 上的存储设置不断从无限制更改为固定

Storage setting on Azure Cosmos DB keeps changing from Unlimited to Fixed when deleting and re-creating database using API

我目前正在通过 C# 控制台应用程序使用 Azure API 为我们的 Cosmos DB 播种。在此过程中,我删除并重新创建数据库以确保删除所有预先存在的数据(这可能不是最佳选择,但我没有看到截断所有选项)。最初,数据库的存储设置设置为无限制,如下所示。

但是,一旦我删除并重新创建数据库,它会将存储选项更改为固定的,如下所示。

我一直在谷歌上搜索修复,我所能找到的就是能够将 RequestOptions 添加到创建数据库的请求中。不幸的是,这只让我能够编辑数据库的吞吐量。

如何在重新创建数据库时更改存储类型?

更新: 以下是我如何创建数据库。该声明相当琐碎,这就是为什么我没有将其包含在原始 post 中的原因。


try 
{
    await this.client.DeleteDatabaseAsync(UriFactory.CreateDatabaseUri(environment.Settings.DatabaseName));
}
catch (Exception e) 
{
    Console.WriteLine(e.Message);
}

await this.client.CreateDatabaseIfNotExistsAsync(new Database { Id = environment.Settings.DatabaseName });

您必须指定分区键才能创建无限制的存储容量

var collection = new DocumentCollection
                {
                    Id = collectionName,
                    DefaultTimeToLive = -1
                };
    collection.PartitionKey.Paths.Add(partitionKey);
    var response = await this.cosmosDbClient.CreateDocumentCollectionIfNotExistsAsync(this.databaseUri, collection, new RequestOptions
                {
                    OfferThroughput = offerThroughput
                });

谢谢, 什拉达·阿格拉瓦尔