MongoCollection::parallelCollectionScan

(PECL mongo >=1.5.0)

MongoCollection::parallelCollectionScanRetourne un tableau de curseurs pour parcourir une collection complète en parallèle

Description

public MongoCollection::parallelCollectionScan ( int $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.

Liste de paramètres

num_cursors

Le nombre de curseurs à demander au serveur. Notez que le serveur peut retourner moins de curseurs que demandé.

Valeurs de retour

Retourne un tableau d'objets MongoCommandCursor.

Exemples

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);

/* Ajoute tous les curseurs à l'itérateur multiple */
$mi = new MultipleIteratorMultipleIterator::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";
        }
    }
}
?>

Voir aussi