【发布时间】:2019-01-20 08:08:51
【问题描述】:
我需要在 Azure 的 Cosmos MongoDB 中创建一个集合,但需要使用分区/分片键,因为所需的配置是数据库将具有预配置的吞吐量(一组 RU),并且其中的集合将具有共享的吞吐量.
集群的 API 设置为 Cosmos DB Mongo API - 如果我在 cosmos 中创建集合,插入/删除没有问题,但如果我使用下面的代码创建集合,我将收到错误消息 {"Command insert failed: document does not contain shard key."} 甚至虽然查看门户中的集合和代码中的集合看起来相同。
client.CreateDocumentCollectionAsync(database.SelfLink,
new DocumentCollection
{
Id = "CollectionName",
PartitionKey = new PartitionKeyDefinition { Paths = new Collection<string> { "/_id" } }
}).Wait();
我已与微软代表谈过,但我缺乏“答案”。他建议使用Mongo CSharp Driver,但似乎这个驱动程序无法定义分区键(这是有道理的)。
如何使用分区键创建集合?
谢谢。
【问题讨论】:
标签: c# azure-cosmosdb azure-cosmosdb-mongoapi