Python中使用pymongo进行count操作很慢,求正确优化方法
三万条数据, 每条数据只包含一个随机数 {"digit": 随机数}
要求: 统计出现最多次数的数字
数据库表 table
def main():
digits = []
for d in table.find():
n = d['digit']
digits.append(n)
dig = set(digits)
news = []
i = 0
for d in dig:
c = table.find({"digit": d}).count()
zz = (d, c)
news.append(zz)
print(i)
i += 1
if name == ‘main’:
start = time.time()
main()
print(‘Cost: {}’.format(time.time() - start))
运行一次需要五六分钟吧, 用多线程开 100 也快不了多少, 风扇还特响...
请问正确姿势是怎样的
Python中使用pymongo进行count操作很慢,求正确优化方法
3 回复
aggregate
是的, 忘了补充了…thx~


