在使用 CLI 创建的 MongoDB 分片集合中插入文档时出错

2024-02-23

使用最新的 azure cli (2.0.21),我尝试使用以下脚本(来自 powershell)在 CosmosDB 中创建分片 MongoDB 集合:

$resourceGroupName="RG-S01-APP-CASRWA-001"
$name="marcoolandesetest"
$databaseName="marco"
$collectionName="fromcli"
$originalThroughput=100000 
$kind="MongoDB"
$partition="/TaskId"

az login
az cosmosdb create --name $name --kind $kind --resource-group 
$resourceGroupName

az cosmosdb database create --name $name --db-name $databaseName --resource-
group $resourceGroupName 

az cosmosdb collection create --collection-name $collectionName --name $name --db-name $databaseName --resource-group $resourceGroupName --throughput $originalThroughput --partition-key-path $partition --indexing-policy '@index.json'

index.json的内容如下:

{
    "indexingMode": "consistent",
    "automatic": true,
    "includedPaths": [
        {
            "path": "/*",
            "indexes": [
                {
                    "kind": "Range",
                    "dataType": "Number",
                    "precision": -1
                },
                {
                    "kind": "Hash",
                    "dataType": "String",
                    "precision": 3
                }
            ]
        }
    ],
    "excludedPaths": []
}

但是,当我尝试从门户中的 UI 插入文档时,没有任何反应,文档在插入时挂起:

使用 MongoB.Drivers nuget 包从 C# 库插入文档也会失败,并出现错误:

“文档不包含分片键”

显然我的文档包含分片键属性“TaskId”.

如果我从门户中的 UI 创建相同类型的集合,一切都会正常工作,也在 C# 中,使用相同的代码

这是集合设置的两个屏幕截图,您可以看到它们是相同的:

enter image description here Collection "fromui" is created from the portal UI, and with this one everything works fine, inserting a document from the portal, and inserting from C# as well.

集合“fromcli”是使用上面的 CLI 脚本创建的,并插入一个根本不起作用的文档。


微软确认 CLI (2.0.21) 存在错误,他们将很快推出更新。

我创建了一篇博客文章来描述如何解决这个问题,直到发布带有修复程序的新 CLI 版本:

https://blog.olandese.nl/2017/12/13/create-a-sharded-mongodb-in-azure-cosmos-db/ https://blog.olandese.nl/2017/12/13/create-a-sharded-mongodb-in-azure-cosmos-db/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在使用 CLI 创建的 MongoDB 分片集合中插入文档时出错 的相关文章

  • 多个 2dsphere 索引,不确定要运行 geoNear 中的哪一个

    我在用 geoNear and near在 MongoDB 的聚合内部 我有将我的 MongoDB 数据库托管到 mlabs 中 And 我本地一切正常 但不知道为什么当我部署应用程序时出现以下错误 geoNear 命令失败 ok 0 0
  • 如何访问 Pandas DataFrame 中嵌入的 json 对象?

    TL DR 如果 Pandas DataFrame 中加载的字段本身包含 JSON 文档 那么如何以类似 Pandas 的方式使用它们 目前我直接从 Twitter 库转储 json 字典结果 twython https github co
  • mongodb - 一个集合中的许多文档与多个集合中的许多文档

    我使用 mongodb 作为数据库存储 我的网络应用程序必须收集用户响应 用户响应是 mongodb 中的文档 或 sql 中的一行 一个文档的长度大约是10 200 用户响应被分类 仅到一个类别 每个类别的用户响应数在100 5000之间
  • 如何将 CosmosDB FeedIterator 结果转换为 IAsyncEnumerable 或 IEnumerable?

    以简单的可重用方式从 CosmosDb FeedIterator 转换为 IEnumerable 中的数据而不需要到处编写循环和迭代有点棘手 The 微软官方示例 https learn microsoft com en us dotnet
  • Mongodb聚合框架:$group是否使用索引?

    我正在尝试使用聚合框架 match and group阶段 做 group阶段使用索引数据 我正在使用最新的可用 mongodb 版本 2 5 4 group不使用索引数据 来自 mongoDBdocs http docs mongodb
  • Spring Mongo Populator 一一

    我在 Kotlin 上使用 MongoDB 和 Spring 并且希望我的应用程序在启动时填充 MongoDB 集合 并在每次启动时清理 我的问题是 如果我填充的某些数据有问题 如何才能一一填充数据以便容错 my code Configur
  • 使用mongodb聚合框架按数组长度分组

    我有一个看起来像这样的集合 id id0 name saved things id id1 name saved things id id2 name saved things etc 我想使用 mongodb 的聚合框架来得出一个直方图结
  • MongoDB:如何使用单个命令更新多个文档?

    我惊讶地发现以下示例代码仅更新单个文档 gt db test save id 1 foo bar gt db test save id 2 foo bar gt db test update foo bar set test success
  • 如何决定使用哪种NoSQL技术? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 MongoDB 基于文档 HBase 基于列 和 Neo4j 对象图 的优缺点是什么 我特别有兴趣了解
  • 如何在Mongodb java驱动程序中编写多个group by id字段

    在下面的查询中 group id success success responseCode responseCode label label max timeStamp timeStamp 1 count responseCode sum
  • MongoDB $geoIntersects 不适用于包含负顶点的多边形

    我已在数据库中存储了跨越 x 轴和 y 轴的多边形 并且我想搜索包含给定点的多边形 为此 我使用 geoIntersects 运算符来指定一个点 但是 当多边形穿过轴时 MongoDB 不会返回任何多边形 我可以对查询或架构进行任何小的更改
  • 检索 mongoDB 文档中的空数组或 null

    我有我学校所有学生的收藏 每个文档都有一个sports列出每个学生从事的运动的数组属性 但该属性可能显示为sports or sports null或者根本不出现 如何检索属于上述三种情况之一的所有文件 如何向只有一项运动但未表示为数组的学
  • 如何更改 MongoDB 用户权限?

    例如 如果我有这个用户 gt db system users find user testAdmin pwd some hash roles clusterAdmin otherDBRoles TestDB readWrite 我想给那个用
  • MongoDB,从数组中删除对象

    Doc id 5150a1199fac0e6910000002 name some name items id 23 name item name 23 id 24 name item name 24 有没有办法从数组中提取特定对象 IE
  • Mongodb 聚合数组中的子文档

    我正在使用 mongodb 作为后端实现一个小型应用程序 在此应用程序中 我有一个数据结构 其中文档将包含一个包含子文档数组的字段 我使用以下用例作为基础 http docs mongodb org manual use cases inv
  • PHP 中的 MongoDB - 如何将项目插入集合中的数组中?

    这必须很容易 但我似乎无法弄清楚 假设我有一个集合users这是集合中的第一项 id ObjectId 4d8653c027d02a6437bc89ca name Oscar Godson email email protected cdn
  • Mongodump之后,调用MongoRestore挂起

    我们正在尝试在相对较小的数据库上做一个简单的 MongoDump 我们的步骤很简单 export 从目标机器上删除现有数据库 在目标机器上导入 MongoDump 完美执行 mongodump out root mongo prod DB
  • Mongodb - 为现有集合添加架构

    我的 MongoDB 中有一个包含 1300 万条记录的集合 不幸的是 当我创建这个集合时 没有为其创建模式 我想知道除了备份整个数据库 创建架构并上传所有数据之外 是否有任何方法可以添加 JSON 架构 您可以使用以下方法将 JSON 架
  • Node.js 检测两个猫鼬查找何时完成

    我正在尝试使用自动完成功能初始化两个输入library https www devbridge com sourcery components jquery autocomplete 当我加载页面时 我将触发 Ajax 来初始化两个输入文本
  • 如何处理 MongoDB 的断开连接错误

    我在 Node js 进程中看到了这个未捕获的异常 Uncaught exception Error read ETIMEDOUT at TCP onStreamRead internal stream base commons js 16

随机推荐

  • 有没有办法调试 v8 堆之外发生的内存泄漏

    我有一个在 NodeJS 上运行的生产应用程序 它提供了大量的流量 虽然部署后一切顺利 但性能在几个小时后开始下降 我们在 newrelic 上注意到 NodeJS 的非堆内存持续稳定增长 而 V8 堆内存则保持稳定 我们尝试使用 Chro
  • Xampp 上的 Symfony 开发速度非常慢,我该怎么办?

    我已经设置了 Symfony 但每个页面加载需要 40 秒 如果我有一个空控制器 则加载需要 8 秒 如果我开始对数据库进行一些复杂的查询 情况会更糟 我能做些什么 停用分析器 这会改变很多吗 在开发模式下激活 APC 但是这不会成为更改代
  • Rails open-uri 在路径上中断

    我正在尝试使用 open uri 获取 url 我的代码非常简单 url open http localhost 3000 descriptions return render text gt url to json 当我运行此代码时 出现
  • 我可以在 PowerShell 脚本中禁用选择模式吗?

    PowerShell 默认情况下 当您在 PowerShell 控制台内单击时 PowerShell 会进入 选择模式 并暂停脚本 直到您按空格键 输入键或转义键 我有一个无限循环的脚本while true 它应该始终运行 当有人意外单击
  • 使用 WinHttp.WinHttpRequest 查找检索到的二进制数据的大小

    我最近意识到 URLDownloadToFile 使用 IE 代理设置 所以我正在寻找替代方案 发现 WinHttp WinHttpRequest 可能有效 ResponseBody 属性似乎包含获取的数据 我需要将其写入文件 问题是我找不
  • 如何在 dos 批处理文件中设置当前工作目录/驱动器?

    cd d projects不起作用 如何设置当前工作驱动器和目录 以便可以从那里运行 msbuild 脚本 这也很方便 pushd D projects 然后您可以返回到之前所在的目录 popd
  • 从转换器返回动态资源

    我想根据布尔值的状态 在本例中为复选框的状态 更改 WPF 控件的颜色 只要我使用静态资源 这就可以正常工作 我的控制
  • .htaccess 重写正则表达式:匹配除“index”之外的任何内容

    我正在尝试创建一个在 htaccess 文件中使用的规则来匹配除了特定的字符串 在本例中 index 我认为应该可以先匹配这个特殊字符串并使用 L 但这不起作用 并且应该可以使用以下正则表达式 但它会导致 500 错误 我想匹配 页面名称1
  • 有没有一个命令行程序可以查找Scaladoc?

    Ruby 有一个名为 ri 的程序 您可以在其中输入 ri Array 并获取其联机帮助页 scaladoc 有类似的东西吗 现在 Scaladoc Web 应用程序 正在通过浏览器内快速搜索的索引得到增强 这种事情应该变得容易得多 特别是
  • 无法通过 HTTP/REST 访问 FireBase 数据库错误 403 Forbidden

    Swift Vapor 服务器框架 Xcode 8 1 我正在尝试读取 Firebase 实时数据库 向我的数据库发出 HTTP 请求 但权限被拒绝 这些是步骤 1 创建 JWT 使用从 console developers google
  • 在 xsl 中格式化科学数字表示形式

    我的 XML 中有以下值 1 8959581529998104E 4 我想将其格式化为使用 XSL 给我的确切数字 0 000189595815299981 format number 1 8959581529998104E 4 0 000
  • 获取响应流时出错 (ReadDone2):接收失败

    请帮帮我 发送后查询后 我出现网络异常 获取响应流时出错 ReadDone2 接收失败 帮助摆脱这个错误 谢谢 一段代码 try string queryContent string Format login 0 password 1 mo
  • 为什么通过 Expression.Call 编译的 lambda 构建比应该执行相同操作的委托稍慢?

    为什么通过 Expression Call 编译的 lambda 构建比应该执行相同操作的委托稍慢 以及如何避免呢 解释 BenchmarkDotNet 结果 我们正在比较CallBuildedReal vs CallLambda 另外两个
  • strings.xml 中的 Android `templateMergeStrategy`

    什么是templateMergeStrategyAndroid 资源中的属性意味着什么 例如在 Google 地图 API 密钥文件中
  • Heroku 的 SSH 隧道

    我提供了一个在 Heroku 上托管的服务 它允许用户使用他们的数据库报告他们自己的数据 我的客户必须将我的 Heroku 应用程序连接到他们的数据库 他们中的一些人显然害怕让数据在互联网上清晰传输 Heroku 是否可以打开从我的应用程序
  • 如何存储重复日期并记住夏令时

    我将事件存储在我的数据库中 我有 开始 和 结束 日期时间 tickets start 和 tickets end 门票销售实际开始 结束的时间 而不是实际活动的开始 结束的时间 到目前为止 我已经构建了一些方法来完成所有有趣的事情 例如在
  • 在 PHP 中处理 csv 文件时如何指定编码?

    上面来自php手册 但是我没有看到在哪里指定编码 比如utf8左右 尝试更改区域设置 就像下面的例子中所说的那样manual
  • Android 中的 Activity 太多?

    当我开始我的 Android 项目时 我有一个误解 即应用程序中显示的每个屏幕都必须是一个新活动 现在我已经完成了这个项目 我已经在我的模拟器以及几部 Android 手机上检查了它 到目前为止 我还没有看到任何问题 但最近我在某处读到 应
  • MVC4 绑定列表中的下拉列表(错误)

    我在视图中有以下代码 索引 cshtml 绑定问题 第一个下拉列表根据 ChildItem 编辑器模板选择正确的值 使用内联下拉列表的第二个示例不起作用我不想创建一个编辑器模板只是为了显示下拉值 奇怪的是 TextBoxFor 将显示正确的
  • 在使用 CLI 创建的 MongoDB 分片集合中插入文档时出错

    使用最新的 azure cli 2 0 21 我尝试使用以下脚本 来自 powershell 在 CosmosDB 中创建分片 MongoDB 集合 resourceGroupName RG S01 APP CASRWA 001 name