Технически, нет реального отличия в анализе времени выполнения MapReduce по сравнению со «стандартными» алгоритмами - MapReduce по-прежнему является алгоритмом, как и любой другой (или, в частности, классом алгоритмов, которые происходят в несколько этапов при определенном взаимодействии). между этими шагами).
Время выполнения задания MapReduce по-прежнему будет увеличиваться в зависимости от прогнозируемого нормального алгоритмического анализа, когда вы учитываете распределение задач по нескольким машинам и затем находите максимальное индивидуальное машинное время, необходимое для каждого шага.
То есть, если у вас есть задача, требующая M операций с картой и R сокращения операций, выполняющихся на N машинах, и вы ожидаете, что средняя операция с картой займет m времени, а средняя операция сокращения - r, то вы ' у вас будет ожидаемое время выполнения ceil(M/N)*m + ceil(R/N)*r
времени для выполнения всех рассматриваемых задач.
Прогнозирование значений M, R, m и r - это все, что может быть достигнуто с помощью обычного анализа любого алгоритма, который вы подключаете к MapReduce.