gpt4 book ai didi

node.js - MongoDB 的 db.collection.distinct() 对于每个用户的效率与保存为数据库条目并检索结果的效率

转载 作者:太空宇宙 更新时间:2023-11-04 01:09:16 31 4
gpt4 key购买 nike

在我的 nodeJS 应用程序中,我查询 mongoDB 以获得特定数据库字段的不同值。这将返回一个包含大约 3000 个值的数组。

每个用户都必须在每个 session 中获取此数据(因为它是运行应用程序不可或缺的一部分)。

我想知道为每个用户执行此操作是否更有效(更快):

 db.collection.distinct({"value"}, function(data){
// save the data in a variable
})

或者我是否应该在服务器端加载不同的值(例如,每天一次),然后将其保存为数据库条目以供每个用户检索,如下所示:

// Server-side:

db.collection.distinct({"value"}, function(data){
// save the data to MongoDB as a document
})

// Client-side:

db.serverInfo.find({name: "uniqueEntries"}, function(data){
// Save to browser as a variable
})

我自己对此进行了测试,并没有注意到太大的差异,但我是目前唯一使用该应用程序的人。一旦我获得 10/100/1000/10,000 个用户,我就想知道这里最适合使用哪个。

最佳答案

如果您在此字段上有索引,MongoDB 应该能够仅使用该索引返回distinct() 操作的结果,这应该使其足够快。

但是,与所有性能问题一样,分析是最好的确定方法,或者对于 MongoDB,使用 explain 选项来查看幕后发生的情况。

关于node.js - MongoDB 的 db.collection.distinct() 对于每个用户的效率与保存为数据库条目并检索结果的效率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19602377/

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