(PECL mongo >=1.5.0)
MongoCollection::parallelCollectionScan — Retourne un tableau de curseurs pour parcourir une collection complète en parallèle
$num_cursors
) : array[MongoCommandCursor]
Cette méthode retourne un tableau d'un maximum de num_cursors
curseurs. Une itération d'un des curseurs retournés retournera un jeu partiel
de documents de la collection. Une itération sur tous les curseurs retournés
retournera tous les documents de la collection.
Cette méthode est un gestionnaire de la commande parallelCollectionScan
MongoDB.
num_cursors
Le nombre de curseurs à demander au serveur. Notez que le serveur peut retourner moins de curseurs que demandé.
Retourne un tableau d'objets MongoCommandCursor.
Exemple #1 Exemple avec MongoCollection::parallelCollectionScan()
Retourne tous les documents d'une collection en utilisant plusieurs curseurs.
<?php
$m = new MongoClient;
$c = $m->demo->cities;
/* Demande 3 curseurs */
$cursors = $c->parallelCollectionScan( 3 );
/* Ajoute tous les curseurs à l'itérateur multiple */
$mi = new MultipleIterator( MultipleIterator::MIT_NEED_ANY );
foreach ( $cursors as $cursor )
{
$mi->attachIterator( $cursor );
}
/* Parcours tous les curseurs associés */
foreach ( $mi as $items )
{
foreach ( $items as $item )
{
if ( $item !== NULL )
{
echo $item['name'], "\n";
}
}
}
?>