gpt4 book ai didi

c# - 如何使用mongoDB批量检索文档?

转载 作者:可可西里 更新时间:2023-11-01 10:01:34 25 4
gpt4 key购买 nike

我有一个使用 mongoDB C# 驱动程序从 mongoDB 查询数据的应用程序,如下所示:

public void main()  
{
foreach (int i in listOfKey)
{
list.add(getObjectfromDB(i);
}
}

public myObject getObjFromDb(int primaryKey)
{
document query = new document();
query["primKey"] = primaryKey;
document result= mongo["myDatabase"]["myCollection"].findOne(query);
return parseObject(result);
}

在我的本地(开发)机器上,以这种方式获取 100 个对象只需要不到一秒钟的时间。但是,我最近将数据库移到了 Internet 上的服务器上,对于相同数量的对象,执行此查询大约需要 30 秒。

此外,查看 mongoDB 日志,它似乎打开了大约 8-10 个到数据库的连接来执行此查询。

所以我想做的是在数据库中查询一组主键并立即将它们全部取回,然后在循环中进行解析,如果可能的话使用一个连接。

我该如何优化我的查询?
谢谢,
--迈克尔

最佳答案

您想使用 $in。 $or 也可以工作,但更冗长并且仅在较新版本中受支持(我相信 1.5.4 后)。

关于c# - 如何使用mongoDB批量检索文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4661409/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com