Estoy empezando a jugar con hadoop (pero aún no tengo acceso a un clúster, así que solo juego en modo independiente). Mi pregunta es, una vez que está en una configuración de clúster, ¿cómo se distribuyen las tareas y se puede transferir la base del código a nuevos nodos?¿Puede Hadoop distribuir tareas y código base?
Idealmente, me gustaría ejecutar grandes trabajos por lotes y si necesito más capacidad agregar nuevos nodos a un clúster, pero no estoy seguro si tendré que copiar el mismo código que se está ejecutando localmente o hacer algo especial para Mientras se ejecuta el trabajo por lotes, puedo agregar capacidad. Pensé que podría almacenar mi código base en el HDFS y hacer que se ejecute localmente para que se ejecute cada vez que lo necesite, pero eso significa que necesito algún tipo de script inicial en el servidor y necesito ejecutarlo primero.
¡Cualquier sugerencia o consejo sobre si esto es posible sería genial!
Gracias.
Gracias, excelente respuesta. Tiene sentido con Java, pero ¿es esto también cierto con el uso de la transmisión de Python? – Lostsoul
Desde http://hadoop.apache.org/common/docs/r0.15.2/streaming.html#Package+Files+With+Job+Submissions: "Puede especificar cualquier ejecutable como el asignador y/o el reductor. no es necesario que los ejecutables preexistan en las máquinas del clúster, sin embargo, si no lo hacen, deberá usar la opción "-file" para indicarle a la estructura que empaquete los archivos ejecutables como parte del envío de trabajos ". Todo lo anterior con respecto a la adición de tasktrackers también es cierto para la transmisión. –