84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
目的: 在超过10万条数据 随机 选取一条数据。我的方法: data=db[item].find().skip(random_num).limit()遇到问题: 耗费时间很长才能随机找到数据。根据profile测试,是因为find().怎么优化?
建议在随机取得时候根据具体的查询条件来做。不要直接通过skip的方式。
你知道mongo的聚合框架不?查查吧,高性能的关键。只要不是跨库,不是引用,都能用。
首先在item上建立索引,可以大大提高查询速度。另外可以把随机数条件变成具体查询条件(用随机数构造)。另外,聚合框架对你提出的这种简单地find查询并没有什么帮助。
建议在随机取得时候根据具体的查询条件来做。不要直接通过skip的方式。
你知道mongo的聚合框架不?查查吧,高性能的关键。只要不是跨库,不是引用,都能用。
首先在item上建立索引,可以大大提高查询速度。另外可以把随机数条件变成具体查询条件(用随机数构造)。另外,聚合框架对你提出的这种简单地find查询并没有什么帮助。