Transmitir y serializar todo hacia y desde el cliente php probablemente agregue muchos gastos generales. Ejecutar migraciones desde el shell será lo más rápido. Escríbalos con una actualización o use un cursor con forEach para iterar y hacer llamadas a save .
Vea un ejemplo del uso de cursores MongoDB actualiza varios registros de matriz (hacia abajo).
Tenga cuidado con instantánea Problemas con los cursores. Probablemente desee una actualización idempotente o use una instantánea si la colección no está fragmentada.