Tutorial de Hadoop Pig: ¿Qué es Apache Pig? Architectura, ejemplo

Comenzaremos con la introducción a Pig.

¿Qué es el cerdo apache?

Pig es un lenguaje de programación de alto nivel útil para analizar grandes conjuntos de datos. Pig fue el resultado del esfuerzo de desarrollo de Yahoo!

En un marco MapReduce, los programas deben traducirse en una serie de etapas Map y Reduce. Sin embargo, este no es un modelo de programación con el que los analistas de datos estén familiarizados. Entonces, para cerrar esta brecha, se construyó una abstracción llamada Pig sobre Hadoop.

Apache Pig permite a las personas centrarse más en analizar conjuntos de datos masivos y dedicar menos tiempo a escribir programas Map-Reduce. Similar a los cerdos, que comen cualquier cosa, el cerdo apache lenguaje de programación está diseñado para trabajar con cualquier tipo de datos. ¡Por eso el nombre, Cerdo!

¡Por eso el nombre, Cerdo!
¡Por eso el nombre, Cerdo!

En este tutorial de Apache Pig para principiantes, aprenderá:

Cerdo Architectura

El ArchiLa tecnología de Pig consta de dos componentes:

  1. Jerga, que es un idioma
  2. Un entorno de ejecución, para ejecutar programas PigLatin.

Un programa Pig Latin consiste en una serie de operaciones o transformaciones que se aplican a los datos de entrada para producir una salida. Estas operaciones describen un flujo de datos que se traduce en una representación ejecutable mediante el entorno de ejecución Pig de Hadoop. Debajo, los resultados de estas transformaciones son una serie de trabajos de MapReduce que un programador desconoce. Por lo tanto, en cierto modo, Pig en Hadoop permite al programador centrarse en los datos en lugar de en la naturaleza de la ejecución.

PigLatin es un lenguaje relativamente rígido que utiliza palabras clave familiares del procesamiento de datos, por ejemplo, unirse, agrupar y filtrar.

Tutorial de Hadoop PIG: introducción, instalación y ejemplo
CERDO Architectura

Modos de ejecución:

Pig en Hadoop tiene dos modos de ejecución:

  1. Modo local: en este modo, el lenguaje Hadoop Pig se ejecuta en un solo JVM y hace uso del sistema de archivos local. Este modo es adecuado sólo para el análisis de pequeños conjuntos de datos utilizando Pig en Hadoop.
  2. Modo de reducción de mapas: en este modo, las consultas escritas en Pig Latin se traducen a MapReduce Los trabajos se ejecutan en un clúster Hadoop (el clúster puede ser pseudodistribuido o totalmente distribuido). El modo MapReduce con el clúster totalmente distribuido es útil para ejecutar Pig en grandes conjuntos de datos.

Cómo descargar e instalar Pig

Ahora, en este tutorial de Apache Pig, aprenderemos cómo descargar e instalar Pig:

Antes de comenzar con el proceso real, asegúrese de tener Hadoop instalado. Cambie el usuario a 'hduser' (id utilizado durante la configuración de Hadoop, puede cambiar al ID de usuario utilizado durante la configuración de Hadoop)

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Paso 1) Descargue la última versión estable de Pig Hadoop desde cualquiera de los sitios espejo disponibles en

http://pig.apache.org/releases.html

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Seleccionar tar.gz (y no src.tar.gz) archivo para descargar.

Paso 2) Una vez que se complete la descarga, navegue hasta el directorio que contiene el archivo tar descargado y mueva el archivo tar a la ubicación donde desea configurar Pig Hadoop. En este caso, nos moveremos a /usr/local

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Mover a un directorio que contenga archivos Pig Hadoop

cd /usr/local

Extraiga el contenido del archivo tar como se muestra a continuación

sudo tar -xvf pig-0.12.1.tar.gz

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Paso 3). modificar ~ / .bashrc para agregar variables de entorno relacionadas con Pig

Abierto ~ / .bashrc archivo en cualquier editor de texto de su elección y realice las siguientes modificaciones:

export PIG_HOME=<Installation directory of Pig>
export PATH=$PIG_HOME/bin:$HADOOP_HOME/bin:$PATH

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Paso 4) Ahora, obtenga la configuración de este entorno usando el siguiente comando

. ~/.bashrc

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Paso 5) Necesitamos recompilar CERDO para apoyar Hadoop 2.2.0

Estos son los pasos para hacer esto.

Ir al directorio de inicio de PIG

cd $PIG_HOME

Instalar hormiga

sudo apt-get install ant

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Nota: La descarga comenzará y consumirá tiempo según su velocidad de Internet.

Recompilar cerdo

sudo ant clean jar-all -Dhadoopversion=23

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Tenga en cuenta que en este proceso de recompilación se descargan varios componentes. Entonces, un sistema debe estar conectado a Internet.

Además, en caso de que este proceso se atasque en algún lugar y no vea ningún movimiento en el símbolo del sistema durante más de 20 minutos, presione Ctrl + c y vuelva a ejecutar el mismo comando.

En nuestro caso, son 20 minutos.

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Paso 6) Prueba el Cerdo instalación usando el comando

pig -help

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Ejemplo de script de cerdo

Usaremos Pig Scripts para encontrar la cantidad de productos vendidos en cada país.

Entrada: Nuestro conjunto de datos de entrada es un archivo CSV, VentasEne2009.csv

Paso 1) Iniciar Hadoop

$HADOOP_HOME/sbin/start-dfs.sh
$HADOOP_HOME/sbin/start-yarn.sh

Paso 2) Pig en Big Data toma un archivo de HDFS en modo MapReduce y almacena los resultados en HDFS.

Copiar archivo VentasEne2009.csv (almacenado en el sistema de archivos local, ~/input/SalesJan2009.csv) al directorio principal de HDFS (sistema de archivos distribuido Hadoop)

Aquí, en este ejemplo de Apache Pig, el archivo está en la entrada de Carpeta. Si el archivo está almacenado en alguna otra ubicación, proporcione ese nombre.

$HADOOP_HOME/bin/hdfs dfs -copyFromLocal ~/input/SalesJan2009.csv /

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Verifique si un archivo realmente se copia o no.

$HADOOP_HOME/bin/hdfs dfs -ls /

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Paso 3) Configuración de cerdo

Primero, navega hasta $PIG_HOME/conf

cd $PIG_HOME/conf
sudo cp pig.properties pig.properties.original

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Abierto propiedades.de.cerdo usando un editor de texto de su elección y especifique la ruta del archivo de registro usando cerdo.archivo de registro

sudo gedit pig.properties

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Loger utilizará este archivo para registrar errores.

Paso 4) Ejecute el comando "pig" que iniciará el símbolo del sistema de Pig, que es un shell interactivo de consultas de Pig.

pig

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Paso 5)En el símbolo del sistema Grunt para Pig, ejecute los siguientes comandos de Pig en orden.

— A. Cargue el archivo que contiene los datos.

salesTable = LOAD '/SalesJan2009.csv' USING PigStorage(',') AS (Transaction_date:chararray,Product:chararray,Price:chararray,Payment_Type:chararray,Name:chararray,City:chararray,State:chararray,Country:chararray,Account_Created:chararray,Last_Login:chararray,Latitude:chararray,Longitude:chararray);

Presione Enter después de este comando.

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

— B. Agrupar datos por campo País

GroupByCountry = GROUP salesTable BY Country;

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

— C. Para cada tupla en 'GrupoPorPaís', genera la cadena resultante del formulario-> Nombre del País: No. de productos vendidos

CountByCountry = FOREACH GroupByCountry GENERATE CONCAT((chararray)$0,CONCAT(':',(chararray)COUNT($1)));

Presione Enter después de este comando.

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

— D. Almacenar los resultados de Data Flow en el directorio 'ventas_salida_cerdo' en HDFS

STORE CountByCountry INTO 'pig_output_sales' USING PigStorage('\t');

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Este comando tardará un tiempo en ejecutarse. Una vez hecho, deberías ver la siguiente pantalla

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Paso 6) El resultado se puede ver a través de la interfaz de comando como,

$HADOOP_HOME/bin/hdfs dfs -cat pig_output_sales/part-r-00000

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Los resultados también se pueden ver a través de una interfaz web como:

Resultados a través de una interfaz web-

Abierto http://localhost:50070/ en un navegador web

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Ahora selecciona 'Explorar el sistema de archivos' y navegar hasta /usuario/hduser/pig_output_sales

Tutorial de Hadoop PIG: introducción, instalación y ejemplo

Abierto parte-r-00000

Tutorial de Hadoop PIG: introducción, instalación y ejemplo