azure-cosmosdb 相关问题

Azure Cosmos DB是一种全球分布式数据库服务,旨在使用户能够通过全面的SLA弹性地和独立地扩展任意数量地理区域的吞吐量和存储。您可以使用一系列流行的API和编程模型,使用Cosmos DB开发文档,键/值或图形数据库。

使用带有自定义序列化程序的 CosmosClient 查询 CosmosDb [C# - Json.Net - Azure Function]

我正在尝试使用 CosmosClient 和 Azure 函数内的自定义序列化程序来查询 CosmosDB。 这是我的自定义序列化器: 公共类 CosmosDbSerializerService :CosmosSerializer { 私人...

回答 1 投票 0

Azure Cosmos DB(EF/Core)-驼峰式大小写属性名称

我有一个 .NET Core 3.1 API 项目,其中通过实体框架(Microsoft.EntityFrameworkCore.Cosmos - v3.1.5)处理 Cosmos DB 存储。 我有一个数据库模型: [JsonObject(命名策略...

回答 5 投票 0

当前代码 Cosmos DB 3.37.1:PartitionKey 键不匹配异常

这个问题已经被问过很多次了,甚至回答正确过几次,我都看过了,但是,无论我做什么,它都会发生在我身上。这是代码: 创建容器: 字符串

回答 1 投票 0

cosmosdb 的计时器触发器无法正常工作

我对我的函数应用程序“TimerTrigger”有疑问。 我开发了这个函数来与 Telegram 机器人进行通信,以便在 API 请求后发送消息。 我已经尝试过

回答 1 投票 0

如何为 Azure Cosmos DB 确定合适的分区键

我是 Azure Cosmos DB 的新手,但我想对以下内容有一个生动的了解: 分区键是什么? 我现在的理解还很浅 -> 具有相同分区键的项目将转到相同的

回答 2 投票 0

从 Cosmos DB 获取具有接口作为对象成员的结果对象

目前我有一个类存储在 Cosmos DB 中。该类有一个接口作为成员变量。当我尝试查询并迭代结果时,出现异常。 公开课组 { ...

回答 1 投票 0

未找到 HTTP 触发器(Azure Functions)

我正在尝试完成云恢复挑战,但我陷入了以下步骤:(https://i.stack.imgur.com/HFSjq.png) 我创建了一个 azure 函数和一个 http_trigger,当我使用 de...

回答 1 投票 0

限制 Azure Function Cosmos DB 输出绑定中的请求

我正在构建一个 Azure 函数,该函数从服务总线检索增量更新,并应基于 Cosmos DB 中的文档创建/更新文档。 目前我只使用输出绑定来实现...

回答 2 投票 0

为 cosmos db 设置最大自动缩放预置吞吐量

我正在为 Cosmos db 项目进行成本分析。我使用 Cosmos 数据库容量计算器进行成本估算。在容量计算器中,我将存储添加为 1000GB,它给出了 EST。存储成本...

回答 1 投票 0

Microsoft.Azure.WebJobs.Extensions.CosmosDB:Cosmos DB 连接配置“CosmosDB”不存在

我有一个blob触发功能。 init.py 中的代码片段: 凭据 = DefaultAzureCredential() 端点 = os.environ["connect__accountEndpoint"] 客户端 = CosmosClient( url = en...

回答 1 投票 0

如何在 Cosmos db 容器上的过滤项上使用 COUNT 函数

我对 SQL 有点陌生。我需要编写一个查询,使用 MessageTypeId 过滤器从 Cosmos 数据库容器返回两种类型的文件(goodFiles 和 IncidentFIles)的数量,如下所示: 选择...

回答 1 投票 0

如何在 Cosmos DB 中使用 WHERE COUNT

是否可以进行查询,例如... 选择 COUNT(UniqueLastNames) 从 ( 选择计数(c) 从 c 其中 COUNT(c.lastName) > 2 AND COUNT(c.lastName) < 5 GROUP BY c.lastName ) AS UniqueLastNa...

回答 2 投票 0

如何在 C# 中使用 LINQ 比较 CosmosDb 中的 DateTime 的日期

我只需要在 CosmosDb 中使用 LINQ 比较 DateTime 中的 Date。但这是行不通的。以下是我的代码示例: 在 .Where(x => x.Date.Date == date.Date) 中,这没有正确评估...

回答 1 投票 0

Azure AI(认知)搜索中的默认大小

我正在将 Azure 认知搜索与 Cosmos DB 结合使用。 我已经阅读了 Azure 认知搜索的一些文档。他们提到用于查询数据的索引的默认大小仅为 1000。 是

回答 1 投票 0

mongo 聚合运算符 $push on cosmodb

我正在使用azure cosmodb部署mongodb数据库,当我尝试使用$group进行聚合时发生错误,在我的本地数据库中聚合工作正常,但在cosmo中我有

回答 1 投票 0

在 Cosmos 中选择每个 GROUP BY 中的第一项

我有以下json结构 json1 { 姓名:拉朱 地点 : 班格勒 _ts:1705505722 } json2 { 姓名:瑞木 地点 : 班格勒 _ts:1705505725 } json3 { 名称:R...

回答 1 投票 0

CosmosDB ARRAY_CONTAINS 中可以进行模糊搜索吗?

我正在尝试使用数组包含搜索 CosmosDB 数组,如下所示 SELECT c.id, c.PromotionName FROM c where ARRAY_CONTAINS(c.Variants, '0828570001006') 这工作正常,但我不明白......

回答 1 投票 0

Cosmos db 模拟器 - 无法建立 SSL 连接

我正在将 cosmos db 模拟器作为 docker 容器运行以进行测试。不幸的是我在连接它时遇到问题。执行时,如下代码 公共异步任务 我正在将 cosmos db 模拟器作为 Docker 容器运行以进行测试。不幸的是我在连接它时遇到问题。执行时,如下代码 public async Task<IEnumerable<Item>> GetItemsAsync(int offset = 0, CancellationToken cancellationToken = default) { var query = dbContext.Items .OrderBy(x => x.LastReadAt) .ThenByDescending(x => x.CreatedAt) .Skip(offset) .Take(10) .ToFeedIterator(); var feedResponse = await query.ReadNextAsync(); // this is where the error occurs var result = feedResponse.ToList(); return result.AsEnumerable(); } 正在抛出此异常 ---> System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception. [2024-01-21T18:28:23.229Z] ---> System.Security.Authentication.AuthenticationException: The remote certificate is invalid because of errors in the certificate chain: UntrustedRoot [2024-01-21T18:28:23.230Z] at System.Net.Security.SslStream.CompleteHandshake(SslAuthenticationOptions sslAuthenticationOptions) dbContext 只是一个暴露 IQueryable 的 Item 的类 internal class MyDbContext(CosmosClient cosmosClient) { private readonly Container items = cosmosClient.GetContainer("testdb", "items"); public IQueryable<Item> Items => items.GetItemLinqQueryable<Item>(); } 并且是这样注册的 services.AddSingleton(serviceProvider => { var options = serviceProvider.GetRequiredService<IOptions<PersistenceOptions>>(); return new CosmosClient(options.Value.ConnectionString); }); 按照文档 (https://learn.microsoft.com/en-us/azure/cosmos-db/how-to-develop-emulator?tabs=docker) 将证书添加到 Windows 上的“受信任的根证书颁发机构”后-linux%2Ccsharp&pivots=api-nosql#export-the-emulators-tlsssl-certificate),我发现现在代码没有抛出异常,而是挂在var feedResponse = await query.ReadNextAsync();上,之后什么也没有发生。我不知道如何检查问题所在以及为什么我无法获取数据。如果我尝试绕过 SSL 证书验证注册 Cosmos 客户端,也会发生同样的情况(我从 https://github.com/Azure/azure-cosmos-dotnet-v3/issues/1232# 获取解决方法)问题评论-670673733) services.AddSingleton(serviceProvider => { var options = serviceProvider.GetRequiredService<IOptions<PersistenceOptions>>(); return new CosmosClient(options.Value.ConnectionString, new CosmosClientOptions { HttpClientFactory = () => { HttpMessageHandler httpMessageHandler = new HttpClientHandler() { ServerCertificateCustomValidationCallback = (req, cert, chain, errors) => true }; return new HttpClient(httpMessageHandler); }, ConnectionMode = ConnectionMode.Gateway } }); 当我连接到 Azure 上的真实 cosmos 数据库实例时,一切正常。我想知道是否有人对 cosmos db 模拟器有类似的经历。我应该注意一些限制吗?这是一个常见问题吗? 连接到 Docker 中运行的 Cosmos DB 模拟器时遇到的问题并不罕见。让我们来看看一些可能的解决方案并检查以解决这些问题: SSL证书问题 正确的证书安装: 确保证书安装正确。由于您已将证书添加到受信任的根证书颁发机构,请确保将其安装在正确的存储中(本地计算机用于服务器范围的信任,当前用户用于用户特定的信任)。 在 Docker 中验证证书: 检查 Docker 容器是否正确引用了已安装的证书。有时,容器可能无权访问主机的证书存储,您可能需要显式地使证书可供容器使用。 代码挂在 ReadNextAsync() 上 网络连接: 确保您的应用程序和 Docker 容器之间不存在网络问题。尝试从运行应用程序的位置对容器执行 ping 操作以确认连接。 防火墙或端口问题: 检查必要的端口是否已打开且未被防火墙阻止。 Cosmos DB 模拟器使用端口 8081 进行 HTTPS;确保此端口在您的 Docker 设置中正确映射并可访问。 Cosmos DB 模拟器配置: 验证 Cosmos DB 模拟器的配置。检查可能需要的任何环境变量或设置,尤其是在 Docker 容器中运行时。 调试应用程序: 使用调试工具单步执行代码并检查它到底挂在哪里。这可能会让您更深入地了解这是未返回的网络调用还是其他原因。 绕过 SSL 证书验证 临时解决方法: 您用来绕过 SSL 验证的方法通常应该作为临时解决方法。但出于安全原因,不建议用于生产。 检查 HttpClient 使用情况: 确保 Cosmos 客户端正确使用为绕过 SSL 验证而创建的 HttpClient 实例。调试以验证它是否被调用。 Docker 中 Cosmos DB 模拟器的限制 与完整的 Azure Cosmos DB 服务相比,模拟器有一些限制。例如,它可能不支持所有功能,或者在某些情况下的行为略有不同。 其他检查 版本兼容性:确保 Cosmos DB SDK 和模拟器的版本兼容。 日志记录:在应用程序中启用详细日志记录以捕获有关请求和响应的更多信息。 一般建议 使用真实 Azure 实例进行测试:由于在真实 Cosmos DB 实例上一切正常,因此可能存在一些特定于 Docker 中的模拟器设置的配置或网络相关问题。 最后,如果这些步骤无法解决问题,请考虑联系 Cosmos DB 社区或 Microsoft 支持人员以获取更具体的指导,因为他们可能知道 Docker 中运行的模拟器的细微差别。此外,查看模拟器的日志(如果有)可以更深入地了解可能出现的问题。

回答 1 投票 0

如何通过 Azure CLI 将 IP 地址添加到 Cosmosdb 数据库防火墙

我想通过 Azure CLI 将我的 IP 添加到 cosmosdb 防火墙。 使用 Azure CLI 执行此操作的唯一方法是使用 az cosmosdb update,但它会覆盖防火墙中的当前 IP。 我正在使用...

回答 3 投票 0

Rust Azure SDK(v.0.19.0)中的 ORDER BY 不起作用

使用 SDK 时,ORDER BY 子句查询不起作用 Azure_sdk版本:0.19.0 Azure_core版本:0.19.0 铁锈版本:1.71 苹果系统:14.1 我的目标是在...之后从 NoSQL Cosmos DB 获取排序的项目...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.