MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

MongoDB:Qual è il punto di usare MapReduce senza parallelismo?

Il motivo principale per utilizzare MapReduce su query più semplici o più tradizionali è che può semplicemente fare cose (ad esempio, aggregazione) che le query semplici non possono.

Una volta che hai bisogno dell'aggregazione, ci sono due opzioni usando MongoDB:MapReduce e il comando di gruppo. Il comando group è analogo al "group by" di SQL ed è limitato in quanto deve restituire tutti i risultati in un'unica risposta del database. Ciò significa che il gruppo può essere utilizzato solo quando hai meno di 4 MB di risultati. MapReduce, d'altra parte, può fare tutto ciò che può fare un "raggruppamento per", ma restituisce i risultati a una nuova raccolta in modo che i risultati possano essere grandi quanto necessario.

Inoltre, il parallelismo sta arrivando, quindi è bene fare un po' di pratica :)