mongodb - CosmosDB 中不同的唯一键和分区键
问题描述
我们正在从 MongoDB 迁移到 CosmosDB。在 MongoDB 中,我们从未创建任何分区键,因为一切正常。但是在 CosmosDB 中,由于对 RU 的有效使用,我们需要创建分区键。
现在的问题是我们的集合中已经有一个复合唯一键,我们不想将其用作分区键(我也不确定在 cosmosDB 中是否可以使用复合分区键),因为我们通常不使用它进行搜索唯一键,但我们使用其他一些参数。
是否有可能创建与唯一键不同的分区键?
我试图这样做,但我总是得到错误 -
cannot create unique index over { abc : 1.0, xyz : 1.0} with shard key pattern { partitionKey : 1.0 }
我还尝试创建分区键,它是唯一键的子集,但这也会导致相同的错误。
是否有解决此问题的方法或有人知道更好的方法?
解决方案
尝试以这种方式为分片集合unique
创建索引:
db.collection.createIndex( { "abc" : 1, "xyz" : 1, "partitionKey" : 1 }, {unique:true})
推荐阅读
- android - 如何使 RecyclerView 与 Composable ViewHolder 渲染更快?
- react-hooks - 如何使用 commercejs 检索方法单击查看产品详细信息
- node.js - "_models2.default".method 错误使用 mongoose、graphql、node、apolloserver
- python - 你能帮我让我的按钮在 Pygame 中工作吗?
- c - 如何在C中一次扫描多个字符?
- javascript - 当表单提交和刷新我的加载屏幕的页面再次出现时?
- rust - 如何在 NixOS 和 cargo 下安装具有 sqlite 支持的diesel-cli?
- javascript - API的“response.data”后如何获取数据
- python - 将两个熊猫数据框与一个公共列合并
- excel - 创建新工作表的子程序会在几分之一秒内打开 VBA 编辑器