RE: Difference Between Scheduled script and Map/Reduce script in 2.0
Map/reduce handles large data sets more easily. You can utilise a search input in the getInputData stage and pass the data straight to a following stage without the need to paginate result sets. Returning a search ID also apparently allows for an extended search execution timeout.
The SS2.0 documentation states that Script.percentComplete is only useable with scheduled searches. This may prevent map/reduce scripts being able to report progress – but I’m not sure whether this is an oversight with the documentation. I’ve planned on testing a map/reduce to see if Script.percentComplete works, but not had the chance as yet.