pymongo - mongodb 的find()耗時太長,該如何優化?
世界只因有你
世界只因有你 2017-04-28 09:04:33
0
3
849

目的: 在超過10萬個資料 隨機 選取一條資料。
我的方法: data=db[item].find().skip(random_num).limit()
遇到問題: 耗費時間很長才能隨機找到資料。根據profile測試,是因為find().怎麼優化?

世界只因有你
世界只因有你

全部回覆(3)
仅有的幸福

建議在隨機取得時候根據具體的查詢條件來做。不要直接透過skip的方式。

某草草

你知道mongo的聚合框架不?查查吧,高性能的關鍵。只要不是跨庫,不是引用,都能用。

阿神

先在item上建立索引,可以大幅提高查詢速度。另外可以把隨機數條件變成具體查詢條件(用隨機數建構)。另外,聚合框架對你提出的這種簡單地find查詢並沒有什麼幫助。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!