Apache Pig РEjecución

En el capítulo anterior, explicamos cómo instalar Apache Pig. En este capítulo, discutiremos cómo ejecutar Apache Pig.

Modos de ejecución de Apache Pig

Puede ejecutar Apache Pig en dos modos, a saber: Modo local y Modo HDFS

Modo local

En este modo, todos los archivos se instalan y ejecutan desde su host local y su sistema de archivos local. No es necesario Hadoop o HDFS. Este modo se usa com√ļnmente para realizar pruebas.

Modo MapReduce

En el modo MapReduce, cargamos o procesamos datos que existen en el sistema de archivos Hadoop (HDFS) usando Apache Pig. En este modo, cada vez que ejecutamos declaraciones Pig Latin para procesar datos, se llama a un trabajo MapReduce en el back-end para realizar una operación específica en los datos que existen en HDFS.

Mecanismos de ejecución de Apache Pig

Los scripts de Apache Pig se pueden ejecutar de tres formas, a saber, modo interactivo, modo por lotes y modo en línea.

  • Modo interactivo (Grunt Shell): puede ejecutar Apache Pig de forma interactiva utilizando el Grunt Shell. En este shell, puede escribir declaraciones Pig Latin y obtener el resultado (usando la declaraci√≥n Dump).

  • Por lotes (Script) – Puede ejecutar Apache Pig en modo por lotes escribiendo un script Pig Latin en el mismo archivo con .cerdo expansi√≥n.

  • Modo integrado (UDF): Apache Pig brinda la capacidad de definir nuestras propias funciones (Ugris Ddefinido Ffunciones) en lenguajes de programaci√≥n como Java y us√°ndolos en nuestro script.

Llamando al Grunt Shell

Puede invocar el contenedor Grunt en su modo deseado (local / MapReduce) usando ‚ąíx opci√≥n como se muestra a continuaci√≥n.

Modo local Modo MapReduce

Equipo –

$./pig ‚Äďx local

Equipo –

$./pig -x mapreduce

Salida

Salir en modo local

Salida

Salida de MapReduce

Cualquiera de estos comandos emitirá un indicador de shell de Grunt, como se muestra a continuación.

grunt>

Puede salir del shell Grunt usando ‘ctrl & plus; D ‘.

Después de invocar el shell Grunt, puede ejecutar el script Pig ingresando directamente declaraciones Pig Latin en él.

grunt> customers = LOAD 'customers.txt' USING PigStorage(',');

Ejecución de Apache Pig en modo por lotes

Puede escribir todo el script Pig Latin en un archivo y ejecutarlo con ‚ÄďX comando… Supongamos que tenemos un script de Pig en un archivo llamado sample_script.pig Como se muestra abajo.

Sample_script.pig

student = LOAD 'hdfs://localhost:9000/pig_data/student.txt' USING
   PigStorage(',') as (id:int,name:chararray,city:chararray);
  
Dump student;

Ahora puede ejecutar el script en el archivo anterior como se muestra a continuación.

Modo local Modo MapReduce
$ cerdo -x local Sample_script.pig $ cerdo -x mapreduce Sample_script.pig

Nota РDiscutiremos en detalle cómo ejecutar el script Pig en Modo Bach Y en modo incorporado en los capítulos siguientes.

ūüöę