我正在尝试在mongodb上执行聚合并抛出此错误!
例外:聚合结果超出了最大文档大小(16MB)。
我正在使用以下详细信息:
PHP版本5.4.7
驱动程序MongoDB PHP版本1.3.2RC1
MongoDB 2.6.12版本
版本=> 2.6.12,targetMinOS => Windows 7 / Windows Server 2008 R2,javascriptEngine => V8,位=> 64,maxBsonObjectSize => 16777216
我的收藏集是+ 200k文档。
Yii :: app()-> bd-> $ collection-> aggregate($ pipeline);
我尝试过:
$consulta =Yii::app()->bd->command(array('aggregate' => $collection,'pipeline' => $pipeline,'allowDiskUse' => true,'cursor'=> array('batchSize' =>10)))
,并且仅返回包含前10个文档的第一批:
[id] => 4272376035505,[ns] =>集合,[firstBatch] =>数据
不返回secondBatch ... xxxBatch
我尝试使用以下方法进行第二批处理(secondBatch ... xxxBatch)(https://derickrethans.nl/cursors-in-mongodb.html):
$ consulta-> getNext();
并返回:
致命错误:在非对象in上调用成员函数getNext()。
还尝试使用$ out:
{“ $ out”:“ nombre-algunacolección”}
我创建了集合,但是它们并没有填充我的文档,它们是动态集合,并且不能帮助我为每个动态集合创建辅助集合。
我不想先对文档进行计数,然后跳过跳过的限制,即限制为500 in 500
我希望能够一次将所有批次都带有“ batchSize”或所有数据