仅按一个字段排序与按多个字段排序之间是否存在显着的性能差异?

问题描述 投票:0回答:1

假设没有索引,仅基于一个字段排序与基于多个字段排序有显着的性能差异吗?

db.movies.aggregate([
  { $sort: { likes: -1 } }
  { $limit: 100 }
])

db.movies.aggregate([
  { $sort: { likes: -1, 
             views: -1, 
             comments: -1, 
             bookmarked: -1 , 
             dislikes: 1
           } 
  },
  { $limit: 100 }
])

如果我正在构建一个APP,第二个查询会扩展吗?时间成本会不会显着增加

database mongodb mongodb-query aggregation-framework mongodb-indexes
1个回答
1
投票

以一种过于简单的方式,它取决于

a) 你的电脑有多少内存

b) 你的数据集有多大——它会保存在内存中吗

如果是这样,那么性能差异将非常微不足道,您实际上不会检测到它。

如果没有,你必须从磁盘读取并可能在你的计算机上使用交换,然后差异将是显着的。

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