Tutorial su Hadoop Pig: cos'è Apache Pig? Architecnica, esempio

Inizieremo con l'introduzione a Pig

Cos'è Apache Pig?

Pig è un linguaggio di programmazione di alto livello utile per analizzare grandi set di dati. Pig è stato il risultato dello sforzo di sviluppo di Yahoo!

In un framework MapReduce, i programmi devono essere tradotti in una serie di fasi Map e Reduce. Tuttavia, questo non è un modello di programmazione con cui gli analisti di dati hanno familiarità. Quindi, per colmare questa lacuna, è stata costruita un’astrazione chiamata Pig sopra Hadoop.

Apache Pig consente alle persone di concentrarsi maggiormente analizzare insiemi di dati di massa e dedicare meno tempo alla scrittura di programmi Map-Reduce. Simile ai maiali, che mangiano qualsiasi cosa, il maiale Apache linguaggio di programmazione è progettato per funzionare su qualsiasi tipo di dati. Ecco perché il nome, Maiale!

Ecco perché il nome, Maiale!
Ecco perché il nome, Maiale!

Nel tutorial di Apache Pig per principianti imparerai:

Maiale Architectura

ArchiLa struttura di Pig è composta da due componenti:

  1. Maiale latino, che è una lingua
  2. Un ambiente di esecuzione, per eseguire programmi PigLatin.

Un programma Pig Latin consiste in una serie di operazioni o trasformazioni che vengono applicate ai dati di input per produrre output. Queste operazioni descrivono un flusso di dati che viene tradotto in una rappresentazione eseguibile, dall'ambiente di esecuzione Hadoop Pig. Sotto, i risultati di queste trasformazioni sono una serie di lavori MapReduce di cui un programmatore non è a conoscenza. Quindi, in un certo senso, Pig in Hadoop consente al programmatore di concentrarsi sui dati piuttosto che sulla natura dell'esecuzione.

PigLatin è un linguaggio relativamente irrigidito che utilizza parole chiave familiari dell'elaborazione dati, ad esempio Join, Group e Filter.

Tutorial Hadoop PIG: introduzione, installazione ed esempio
MAIALE Architectura

Modalità di esecuzione:

Pig in Hadoop ha due modalità di esecuzione:

  1. Modalità locale: in questa modalità, il linguaggio Hadoop Pig viene eseguito in un unico file JVM e fa uso del file system locale. Questa modalità è adatta solo per l'analisi di set di dati di piccole dimensioni utilizzando Pig in Hadoop
  2. Modalità Map Reduce: in questa modalità vengono tradotte le query scritte in Pig Latin MapReduce lavori e vengono eseguiti su un cluster Hadoop (il cluster può essere pseudo o completamente distribuito). La modalità MapReduce con il cluster completamente distribuito è utile per eseguire Pig su set di dati di grandi dimensioni.

Come scaricare e installare Pig

Ora in questo tutorial di Apache Pig impareremo come scaricare e installare Pig:

Prima di iniziare con il processo vero e proprio, assicurati di aver installato Hadoop. Cambia utente in "hduser" (id utilizzato durante la configurazione di Hadoop, puoi passare all'id utente utilizzato durante la configurazione di Hadoop)

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Passo 1) Scarica l'ultima versione stabile di Pig Hadoop da uno qualsiasi dei siti mirror disponibili su

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

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Seleziona tar.gz (e non src.tar.gz) file da scaricare.

Passo 2) Una volta completato il download, vai alla directory contenente il file tar scaricato e sposta il tar nella posizione in cui desideri configurare Pig Hadoop. In questo caso ci sposteremo in /usr/local

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Passare a una directory contenente i file Pig Hadoop

cd /usr/local

Estrarre il contenuto del file tar come di seguito

sudo tar -xvf pig-0.12.1.tar.gz

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Passo 3). modificare ~ / .bashrc per aggiungere variabili d'ambiente relative a Pig

Apri ~ / .bashrc archivia in qualsiasi editor di testo di tua scelta e apporta le seguenti modifiche:

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

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Passo 4) Ora, ottieni la configurazione di questo ambiente utilizzando il comando seguente

. ~/.bashrc

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Passo 5) Dobbiamo ricompilare MAIALE supportare Hadoop 2.2.0

Ecco i passaggi per farlo-

Vai alla directory home PIG

cd $PIG_HOME

Installa Ant

sudo apt-get install ant

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Nota: il download verrà avviato e richiederà tempo in base alla velocità di Internet.

Ricompilare PIG

sudo ant clean jar-all -Dhadoopversion=23

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Tieni presente che in questo processo di ricompilazione vengono scaricati più componenti. Quindi, un sistema dovrebbe essere connesso a Internet.

Inoltre, nel caso in cui questo processo si sia bloccato da qualche parte e non vedi alcun movimento sul prompt dei comandi per più di 20 minuti, premi Ctrl + c ed eseguire nuovamente lo stesso comando.

Nel nostro caso ci vogliono 20 minuti

Tutorial Hadoop PIG: introduzione, installazione ed esempio

step 6) Prova il Maiale installazione utilizzando il comando

pig -help

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Esempio di sceneggiatura di maiale

Utilizzeremo gli script Pig per trovare il numero di prodotti venduti in ciascun paese.

Ingresso: Il nostro set di dati di input è un file CSV, VenditeJan2009.csv

step 1) Avvia Hadoop

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

step 2) Pig in Big Data prende un file da HDFS in modalità MapReduce e memorizza i risultati su HDFS.

Copia il file VenditeJan2009.csv (memorizzato nel file system locale, ~/input/SalesJan2009.csv) nella directory home di HDFS (Hadoop Distributed File System).

Qui in questo esempio di Apache Pig, il file si trova nell'input della cartella. Se il file è archiviato in un'altra posizione, fornisci quel nome

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

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Verificare se un file è effettivamente copiato o meno.

$HADOOP_HOME/bin/hdfs dfs -ls /

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Passo 3) Configurazione del maiale

Innanzitutto, vai a $PIG_HOME/conf

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

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Apri pig.properties utilizzando un editor di testo a tua scelta e specifica il percorso del file di registro utilizzando pig.logfile

sudo gedit pig.properties

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Loger utilizzerà questo file per registrare gli errori.

Passo 4) Esegui il comando "pig" che avvierà il prompt dei comandi di Pig, che è una query interattiva di Pig.

pig

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Passo 5)Nel prompt dei comandi Grunt per Pig, esegui i seguenti comandi Pig in ordine.

— A. Caricare il file contenente i dati.

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);

Premi Invio dopo questo comando.

Tutorial Hadoop PIG: introduzione, installazione ed esempio

— B. Raggruppare i dati per campo Paese

GroupByCountry = GROUP salesTable BY Country;

Tutorial Hadoop PIG: introduzione, installazione ed esempio

— C. Per ogni tupla in ingresso 'Gruppo per paese', generare la stringa risultante del modulo-> Nome del Paese: N. di prodotti venduti

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

Premi Invio dopo questo comando.

Tutorial Hadoop PIG: introduzione, installazione ed esempio

— D. Memorizzare i risultati del flusso di dati nella directory 'maiale_output_vendite' su HDFS

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

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Questo comando richiederà un po' di tempo per essere eseguito. Una volta eseguito, dovresti vedere la seguente schermata

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Passo 6) Il risultato può essere visto attraverso l'interfaccia di comando come,

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

Tutorial Hadoop PIG: introduzione, installazione ed esempio

I risultati possono anche essere visualizzati tramite un'interfaccia web come-

Risultati attraverso un'interfaccia web-

Apri http://localhost:50070/ in un browser web.

Tutorial Hadoop PIG: introduzione, installazione ed esempio

ora scegliere 'Sfoglia il filesystem' e naviga fino a /user/hduser/pig_output_sales

Tutorial Hadoop PIG: introduzione, installazione ed esempio

Apri parte-r-00000

Tutorial Hadoop PIG: introduzione, installazione ed esempio