2012-07-26 35 views
8

¿Cuál es la diferencia real entre ejecutar secuencias de comandos PIG localmente y en mapreduce? Entiendo que el modo mapreduce es cuando lo ejecuta en un clúster que tiene hdfs instalados. ¿Significa esto que el modo local no necesita HDFS, por lo que incluso los trabajos de reducción de mapas no se disparan? ¿Cuál es la diferencia y cuándo el otro?Diferencia entre PIG local y mapreduce mode

Respuesta

8

El modo local creará un trabajo de reducción de mapa simulado que se ejecuta en un archivo local en el disco. En teoría, es equivalente a MapReduce, pero no es un trabajo "real" de mr. No debería ser capaz de distinguir la diferencia desde la perspectiva del usuario.

El modo local es ideal para el desarrollo.

+1

Una cosa a tener en cuenta es que no hay soporte para los contadores en modo local, pero eso se debe a Hadoop Map/Reduce en lugar de Pig. – cyang

6

Modo local: todos los scripts se ejecutan en una sola máquina sin necesidad de Hadoop MapReduce y HDFS. Esto puede ser útil para desarrollar y probar Pig logic. Si está utilizando un pequeño conjunto de datos para desarrollar o probar su código, entonces el modo local podría ser más rápido que pasar por la infraestructura de MapReduce.

El modo local no requiere Hadoop. Cuando se ejecuta en modo local, el programa Pig se ejecuta en el contexto de una máquina virtual Java local y el acceso a los datos se realiza a través del sistema de archivos local de una sola máquina. El modo local es en realidad una simulación local de MapReduce en la clase LocalJobRunner de Hadoop.

Modo MapReduce (también conocido como modo Hadoop): Pig se ejecuta en el clúster Hadoop. En este caso, Pig Script se convierte en una serie de trabajos de MapReduce que luego se ejecutan en el clúster de Hadoop. LOcal and Distributed mode of pig

Si tiene un terabyte de datos en los que desea realizar operaciones y desea desarrollar un programa de manera interactiva, es posible que pronto la velocidad disminuya considerablemente y que pueda comenzar a hacer crecer su almacenamiento. El modo local le permite trabajar con un subconjunto de sus datos de una manera más interactiva para que pueda descubrir la lógica (y resolver los errores) de su programa Pig.

Después de configurar las cosas como usted las desee y de que sus operaciones funcionen sin problemas, puede ejecutar la secuencia de comandos contra el conjunto de datos completo utilizando el modo MapReduce.

Cuestiones relacionadas