最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

与CosmosDB猫鼬:让错误'共享吞吐量集合应该有一个分区key`

运维笔记admin11浏览0评论

与CosmosDB猫鼬:让错误'共享吞吐量集合应该有一个分区key`

与CosmosDB猫鼬:让错误'共享吞吐量集合应该有一个分区key`

我目前使用node-express连接到MongoDB的一个Mongoose应用程序,并在尝试将其迁移到Azure的宇宙DB。

当我干脆让Mongoose创建数据库,应用程序工作正常,但数据库是使用单独的一个集合RU定价创建。

如果我创建启用共享吞吐量和尝试使用一个新的数据库,我得到的错误Shared throughput collection should have a partition key

我曾尝试更新收集架构,包括像这样的碎片键:

const mongoose = require('mongoose');

module.exports = function() {
  const types = mongoose.Schema.Types;
  const messages = new mongoose.Schema({
    order: { type: types.ObjectId, required: true, ref: 'orders' },
    createdAt: { type: Date, default: Date.now },
    sender: { type: types.ObjectId, required: true, ref: 'users' },
    recipient: { type: types.ObjectId, ref: 'users' },
    text: { type: String, required: true },
    seen: { type: Boolean, default: false },
  }, { shardKey: { order: 1 } });

  return mongoose.model('messages', messages);
};

然而,这是行不通的。

关于如何创建任何想法/使用分区键?或者数据库小,所以如果能够消除对分区键,这也将是罚款的规定。

回答如下:

现在我没有这个问题,所以没有必要,除非你觉得这是正确的接受这一个确切的答案。

到目前为止,我已经找到了最好的解决方案是,这是由于“辟吞吐量”当Azure的控制台创建的数据库被检查。如果您删除并重新创建这个箱子不检查数据库(它的正下方输入数据库名),那么你应该不会再遇到这个错误。

发布评论

评论列表(0)

  1. 暂无评论