MongoCollection::parallelCollectionScan
(PECL mongo >=1.5.0)
MongoCollection::parallelCollectionScan — Devuelve un array con cursores para recorrer una colección completa en paralelo
Descripción
$num_cursors
)Este método devuelve un array con un número máximo de num_cursors cursores. Recorrer uno de los cursores devueltos iterará en un conjunto parcial de documentos de una colección. Recorrer todos los cursores devueltos resultará en la obtención de cada documento de la colección.
Este método es una envoltura para el comando parallelCollectionScan de MongoDB.
Parámetros
-
num_cursors -
El número de cursores a solicitar al servidor. Observe que el servidor puede devolver menos cursores que los solicitados.
Valores devueltos
Devuelve un array de objetos MongoCommandCursor.
Ejemplos
Ejemplo #1 Ejmplo de MongoCollection::parallelCollectionScan()
Devolver todos los documentos de una colección empleando varios cursores.
<?php
$m = new MongoClient;
$c = $m->demo->cities;
/* Solicitar tres cursores */
$cursores = $c->parallelCollectionScan( 3 );
/* Añadir todos los cursores a MultipleIterator */
$mi = new MultipleIterator( MultipleIterator::MIT_NEED_ANY );
foreach ( $cursores as $cursor )
{
$mi->attachIterator( $cursor );
}
/* Recorrer todos los cursores asociados */
foreach ( $mi as $items )
{
foreach ( $items as $item )
{
if ( $item !== NULL )
{
echo $item['name'], "\n";
}
}
}
?>
Ver también
- MultipleIterator
- MongoCommandCursor
- MongoDb::command() - Ejecuta una orden de base de datos