Acerca de los problemas de ejecución de Hadoop distribuido en WINDOWS
Si no lo copia y no tiene el archivo de configuración xml completo en el directorio bin del proyecto, todos los programas mapreduce ejecutados en Windows se ejecutarán a través del jvm local y el nombre del trabajo estar con " Trabajos con la palabra "local", como job_local2062122004_0001. Esta no es realmente una ejecución distribuida de mapreduce. Esta no es una ejecución verdaderamente distribuida del programa mapreduce.
Supongo que tenemos que estudiar el código fuente de org.apache.hadoop.conf. La configuración, de todos modos, el archivo de configuración xml afecta si el sistema de archivos para ejecutar mapreduce es el sistema de archivos local de Windows o el sistema hdfs remoto. También afecta si el asignador y reductor para ejecutar mapreduce es el jvm local o el jvm dentro de la máquina del clúster;
Conclusión de este artículo
El primer punto es: al ejecutar mapreduce en Windows, el paquete jar debe reproducirse en todos los nodos esclavos para poder ejecutar correctamente el programa mapreduce de manera distribuida. . (Necesito activar la operación distribuida mapreduce en Windows)
El segundo punto es: en Linux, simplemente copie el archivo jar al nodo maestro del clúster y ejecute el comando hadoop jarPackage.jar MainClassName para ejecutar el programa mapreduce distribuido .
en org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:721)
en org.apache.hadoop.mapred.MapTask.run(MapTask.java. 339)
en org.apache.hadoop.mapred.MapTask.run(MapTask.java. 339)
en org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask. java:721)