我所拥有的是剪贴数据,这些数据可能在mongo数据库中保存了超过一百万条记录。每次我要求数据时,我想做的就是按照电话号码对大量数据进行分组,并汇总此人拥有的列表的数量。
$data = $builder
->group()
->field('_id')->expression('$phone')
->field('listings')->sum(1)
->sort('listings', -1)
->match()
->field('listings')->gt(1)
->execute(array('allowDiskUse'=>true))->toArray();
问题在于,由于该函数执行大量处理操作,因此该函数现在超时并且不返回任何数据。因此,有没有一种方法可以执行此查询而不会导致性能问题或超时呢?对于使用队列,有一些建议,但我以前从未使用过,也不知道从哪里开始。而且使用队列是最好的方法吗?