En esta declaración en una respuesta escrita que "el mismo trabajo se ejecuta con los mismos datos pero en un clúster de 20 nodos, luego en un clúster de 200 nodos. En general, se usará la misma cantidad de tiempo de CPU en ambos clústeres" ¿Alguien puede explicar esto?
He usado el comando de time para medir el tiempo real. A veces tengo más tiempo de CPU (contador de hadoop) que el tiempo real real o viceversa. Sé que el tiempo real mide el tiempo real del reloj transcurrido y puede ser mayor o menor que user+sys .
Todavía no entiendo lo que mide el tiempo total de CPU en Hadoop. Con respecto al comando de tiempo, esta respuesta escrita es buena para ir con user+sys para los puntos de referencia.
total cpu time taken by process = user+sys , entonces debería ser el mismo que el tiempo total de CPU del contador de trabajos de Hadoop. Pero estoy obteniendo resultados diferentes.nota: en apache hive benchmark han considerado el tiempo real pero también puede verse afectado por otros procesos. Así que no puedo considerar el tiempo real.
same job running over the same data but on one 20 node cluster, then a 200 node cluster.Overall, the same amount of CPU time will be used on both clusters
Esto significa que si un trabajo lleva N horas en un clúster de 20 nodos y M horas en un clúster de 200 nodos, 20 * N debería ser igual a M * 200
El tiempo real debe ser su elección, pero como dijo anteriormente, este valor puede cambiar en consecuencia, por lo que debe intentarlo al menos 3 veces y calcular el promedio como resultado final.