问题标签 [azure-cosmosdb-mongoapi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
151 浏览

mongodb - 如何在 cosmos db 中创建除 admin 以外的数据库?

我最近创建了一个使用 Mongo API 的 cosmosdb 帐户。当我创建新集合时,它使用的唯一数据库是“admin”。

我尝试将像 testdb 这样的数据库名称附加到 url,但这没有用。我尝试了 mongo shell 来创建一个数据库,但它也没有工作。

0 投票
0 回答
182 浏览

c# - 将值插入 Azure COSMOS DB for MongDB API 时引发异常:文档不包含分片键

我在 Azure 中创建了一个数据库:Azure Cosmos DB。

在创建数据库时,我选择了资源组,给定帐户名称、API:选择了用于 MongDB API 的 Azure COSMOS DB,并提供了其余所需的详细信息并创建了数据库帐户。

创建数据库帐户后,我abc-test在其中添加了一个数据库并添加了一个集合abc-test-col。在创建集合时,我将分片键指定为id.

现在我创建了一个控制台应用程序来测试连接性并将一些值写入数据库。这是我编写的代码。

当我运行它时,我遇到了一个异常

发生一个或多个错误。(命令插入失败:文档不包含分片键。)

我已经id在我的 CollectionData 中添加了,但它仍然给出了这个例外。
关于为什么会引发此错误的任何帮助。我是否遗漏了什么

在这件事上的任何帮助都会非常有帮助。

0 投票
1 回答
1081 浏览

azure-cosmosdb - 每个数据库的 Azure Cosmos DB 秘密连接字符串

在我的 Azure Cosmos DB 帐户中,我可以添加多个数据库(包含多个集合)。

但是,我似乎只找到对每个数据库都有效的帐户级连接字符串(秘密)。仅在数据库名称部分有所不同。

我觉得这很奇怪。这是预期的吗?如果我想要更精细的控制,是否需要为每个数据库创建单独的帐户?

PS:如果它在某种程度上相关,我正在使用 Mongo API。

干杯

0 投票
1 回答
184 浏览

azure-cosmosdb - ReactiveMongo|CosmosDb:如何使用 ReactiveMongo 使用 URI 连接到 Cosmos Db

社区。我很难使用 Reactive Mongo 客户端连接到 Cosmos Db。我可以使用 shell 和 NoSqlBooster 客户端连接到它,但使用 Reactive Mongo 失败。

URI尝试:

任何帮助将不胜感激。谢谢。

0 投票
1 回答
433 浏览

azure-cosmosdb - 是否可以将 MongoDB 视图与 Azure CosmosDB 一起使用?

我试图通过 Robo3T 创建一个视图。命令执行成功,但视图始终为空,无论我如何为视图指定聚合管道。例子:

CosmosDB 甚至支持 MongoDB 的视图吗?


编辑:正如凯文史密斯在评论中所问的那样db.testView.stats()

0 投票
1 回答
559 浏览

mongodb - Cosmos DB 聚合管道 Mongo 查询和保留字

有人遇到过聚合管道的问题吗?专门使用 Mongo API?我有几个阶段的相当大的查询,$group 阶段无法在前一个 $project 阶段的输出中找到特定字段,尽管如果我注释掉 $group 阶段,我绝对可以看到我期望的字段作为 $project 的一部分输出。

下面设置了两个集合,每个集合都有一个文档用于演示目的。

以下是聚合管道查询:

使用 MongoDB 时,我得到以下结果:

以上是我所期望的,但是当使用托管在 Azure 或 Azure Cosmos Emulator 上的 Cosmos DB 时,我得到以下结果:

^^ 注意该applicationMethod字段不返回。

我尝试了以下方法: - 注释掉/删除group聚合管道的阶段 - 投影阶段applicationMethod正确返回 - 将投影阶段中的字段别名applicationMethod为另一个名称,例如am,对分组没有影响。- 将阶段as字段中的别名集合的名称更改为其他名称lookupapplication

我有以下断言:

  • application是一个保留关键字,即使用作字段名称的前缀也会产生影响。
  • application只是 Cosmos 中的保留关键字(这是因为 SQL 中的 Application 保留字吗?(SQL API))

我知道在vacancies集合上调用我的源字段除了applicationMethod可以解决问题之外,这对于现有文档以及我想继续使用的命名也不实用。groupCosmos DB 及其处理聚合管道阶段的方式似乎存在问题。

0 投票
2 回答
1563 浏览

c# - 缺少程序集引用和/或指令“找不到类型或命名空间名称”

参考三​​个月前发布的 Azure Cosmos Db 教程 ( https://docs.microsoft.com/en-us/azure/cosmos-db/create-mongodb-dotnet ),显然已经过时了。

我按照说明进行操作:克隆示例应用程序文件,更新我的连接字符串,通过 Nuget 包管理器安装 MongoDB.Driver 并运行应用程序。由于 2 个应用程序文件中存在多个 CS0246 和 CS0234 错误,构建(在 Visual Studio 2017 中)失败。看截图

这里

我不是 C# 开发人员。我怀疑 MongoDB API 已更改或 MongoDB.Driver 已过时。该错误意味着缺少指令或程序集引用。

无论哪种方式,这是由 Microsoft 而不是我编写的底层应用程序文件中的一个问题。请参阅此处的屏幕截图。有人对我如何解决这些错误并成功运行该应用程序有任何建议吗?也许我需要安装旧版本的 MongoDB.Driver?

0 投票
2 回答
548 浏览

azure - Mongoshell 无法连接到 Cosmos DB

我希望迁移引用此演示的数据(https://azure.microsoft.com/en-us/resources/videos/using-mongodb-tools-with-azure-cosmos-db/),但我无法通过 mongo shell 连接到 cosmos。

我怀疑这是 SSL 或服务器/shell 版本的问题,但我不清楚修复是什么。我按照演示到 T 并将--sslAllowInvalidCertificates选项与身份验证凭据一起传递并在正确的目录中执行。

这是我在 mongoshell 中看到的内容,请提供有关故障排除提示的建议。

1]

0 投票
1 回答
1782 浏览

azure-cosmosdb-mongoapi - Azure CosmosDB 使用哪个版本的 MongoDB?如何查看版本?

我想弄清楚 CosmosDB 使用的是哪个版本的 MongoDB?

尝试查看 azure cosmosdb 门户以获取更多信息,但没有提及特定版本。

0 投票
1 回答
313 浏览

azure-cosmosdb - cosmosdb 上的唯一稀疏索引不起作用

我的文件是:

我有索引字段fristNamelastName唯一的稀疏索引。这意味着我将永远拥有唯一的firstName并且lastName在我的数据库中。

但是对于字段firstNamelastName.

在 MongoDB v3.4 中可以正常工作。但是当我尝试在 cosmosdb 中使用相同的代码插入时,出现错误

cosmosdb 是否支持唯一稀疏索引?

我发现这个链接说它不支持uniue sparse index

默认情况下支持此链接。sparse index