gpt4 book ai didi

MongoDB 查找与聚合性能

转载 作者:行者123 更新时间:2023-12-05 07:42:13 27 4
gpt4 key购买 nike

我正在尝试衡量 MongoDB 的查找性能与聚合性能。有什么方法可以比较聚合与匹配并找到查询性能。

目前我正在使用 JavaScript 对其进行测量。作为 find():

var start = (new Date).getTime();
db.assets.find({
"catalog_id":"f1a7669654584a42958d9589cf37d173",
"albums":{"$elemMatch":{"id":"5f7938ce6e2718eb776f82474f2e093f","order":{"$exists":false}}}
});
var end = (new Date).getTime();
print("elapsed " + (end - start) +" msec");

作为聚合():

var start = (new Date).getTime();
db.assets.aggregate([
{
"$match":{
"catalog_id":"f1a7669654584a42958d9589cf37d173",
"albums":{"$elemMatch":{"id":"5f7938ce6e2718eb776f82474f2e093f","order":{"$exists":false}}}
}
}
]);
var end = (new Date).getTime();
print("elapsed " + (end - start) +" msec");

但这对我来说似乎不对。有人可以建议其他方法吗。

最佳答案

db.collection.explain() 操作可以返回以下信息:

如何在find()中解释?

db.assets.explain("executionStats").find({
"catalog_id":"f1a7669654584a42958d9589cf37d173",
"albums":{"$elemMatch":{"id":"5f7938ce6e2718eb776f82474f2e093f","order":{"$exists":false}}}
});

如何在aggregate()中解释?

db.assets.explain("executionStats").aggregate([
{
"$match":{
"catalog_id":"f1a7669654584a42958d9589cf37d173",
"albums":{"$elemMatch":{"id":"5f7938ce6e2718eb776f82474f2e093f","order":{"$exists":false}}}
}
}
]);

关于MongoDB 查找与聚合性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44650254/

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