(PECL mongo >=1.5.0)
MongoCollection::parallelCollectionScan — Returns an array of cursors to iterator over a full collection in parallel
This method returns an array of a maximum of num_cursors cursors. An iteration over one of the returned cursors results in a partial set of documents for a collection. Iteration over all the returned cursors results in getting every document back from the collection.
This method is a wrapper for the parallelCollectionScan MongoDB command.
The number of cursors to request from the server. Please note, that the server can return less cursors than you requested.
Returns an array of MongoCommandCursor objects.
Example #1 MongoCollection::parallelCollectionScan() example
Returning all documents in a collection by using multiple cursors.
$m = new MongoClient;
$c = $m->demo->cities;
/* Request three cursors */
$cursors = $c->parallelCollectionScan( 3 );
/* Add all the cursors to the MultipleIterator */
$mi = new MultipleIterator( MultipleIterator::MIT_NEED_ANY );
foreach ( $cursors as $cursor )
$mi->attachIterator( $cursor );
/* Iterate over all the associated cursors */
foreach ( $mi as $items )
foreach ( $items as $item )
if ( $item !== NULL )
echo $item['name'], "\n";