Hadoop Pig Tutorial: Vad är Apache Pig? Architecture, Exempel

Vi börjar med introduktionen till Pig

Vad är Apache Pig?

Pig är ett programmeringsspråk på hög nivå som är användbart för att analysera stora datamängder. Pig var ett resultat av utvecklingsarbete på Yahoo!

I ett MapReduce-ramverk måste program översättas till en serie Map- och Reduce-steg. Detta är dock inte en programmeringsmodell som dataanalytiker är bekanta med. Så, för att överbrygga denna klyfta, byggdes en abstraktion kallad Pig ovanpå Hadoop.

Apache Pig gör det möjligt för människor att fokusera mer på att analysera bulkdatauppsättningar och att lägga mindre tid på att skriva Map-Reduce-program. Liknar grisar, som äter vad som helst, Apache-grisen programmeringsspråk är utformad för att fungera på alla typer av data. Det är därför namnet, Gris!

Det är därför namnet, Gris!
Det är därför namnet, Gris!

I den här nybörjarens Apache Pig-handledning kommer du att lära dig-

Pig Architecture

Smakämnen ArchiTecture of Pig består av två komponenter:

  1. Gris latin, som är ett språk
  2. En körtidsmiljö, för att köra PigLatin-program.

Ett Pig Latin-program består av en serie operationer eller transformationer som appliceras på indata för att producera utdata. Dessa operationer beskriver ett dataflöde som översätts till en körbar representation av Hadoop Pigs exekveringsmiljö. Nedan är resultaten av dessa transformationer serier av MapReduce-jobb som en programmerare inte är medveten om. Så på sätt och vis tillåter Pig in Hadoop programmeraren att fokusera på data snarare än typen av exekvering.

PigLatin är ett relativt styvt språk som använder bekanta nyckelord från databehandling, t.ex. Join, Group och Filter.

Hadoop PIG Tutorial: Introduktion, installation och exempel
GRIS Architecture

Utförandelägen:

Pig in Hadoop har två exekveringslägen:

  1. Lokalt läge: I det här läget körs Hadoop Pig-språket i en singel JVM och använder lokalt filsystem. Det här läget är endast lämpligt för analys av små datamängder med Pig in Hadoop
  2. Map Reduce-läge: I det här läget översätts frågor skrivna på Pig Latin till MapReduce jobb och körs på ett Hadoop-kluster (kluster kan vara pseudo eller helt distribuerat). MapReduce-läget med det fullt distribuerade klustret är användbart för att köra Pig på stora datamängder.

Hur man laddar ner och installerar Pig

Nu i denna Apache Pig-tutorial kommer vi att lära oss hur man laddar ner och installerar Pig:

Innan vi börjar med själva processen, se till att du har Hadoop installerat. Ändra användare till 'hduser' (id som används under Hadoop-konfiguration, du kan byta till användar-id som användes under din Hadoop-konfiguration)

Hadoop PIG Tutorial: Introduktion, installation och exempel

Steg 1) Ladda ner den stabila senaste versionen av Pig Hadoop från någon av speglingssidorna som finns på

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

Hadoop PIG Tutorial: Introduktion, installation och exempel

Välja tar.gz (och inte src.tar.gz) fil att ladda ner.

Steg 2) När en nedladdning är klar, navigera till katalogen som innehåller den nedladdade tar-filen och flytta taren till den plats där du vill ställa in Pig Hadoop. I det här fallet kommer vi att flytta till /usr/local

Hadoop PIG Tutorial: Introduktion, installation och exempel

Flytta till en katalog som innehåller Pig Hadoop-filer

cd /usr/local

Extrahera innehållet i tar-filen enligt nedan

sudo tar -xvf pig-0.12.1.tar.gz

Hadoop PIG Tutorial: Introduktion, installation och exempel

Steg 3). Ändra ~ / .bashrc för att lägga till Pig-relaterade miljövariabler

Öppet ~ / .bashrc fil i valfri textredigerare och gör nedanstående ändringar-

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

Hadoop PIG Tutorial: Introduktion, installation och exempel

Steg 4) Käll nu in den här miljökonfigurationen med kommandot nedan

. ~/.bashrc

Hadoop PIG Tutorial: Introduktion, installation och exempel

Steg 5) Vi behöver kompilera om GRIS att stötta Hadoop 2.2.0

Här är stegen för att göra detta-

Gå till PIG-hemkatalogen

cd $PIG_HOME

Installera Ant

sudo apt-get install ant

Hadoop PIG Tutorial: Introduktion, installation och exempel

Obs: Nedladdningen startar och kommer att ta tid enligt din internethastighet.

Återkompilera PIG

sudo ant clean jar-all -Dhadoopversion=23

Hadoop PIG Tutorial: Introduktion, installation och exempel

Observera att i den här omkompileringsprocessen laddas flera komponenter ned. Så ett system bör vara anslutet till internet.

Dessutom, om den här processen fastnade någonstans och du inte ser någon rörelse på kommandotolken på mer än 20 minuter, tryck sedan på Ctrl + c och kör samma kommando igen.

I vårt fall tar det 20 minuter

Hadoop PIG Tutorial: Introduktion, installation och exempel

Steg 6) Testa Pig installation med kommandot

pig -help

Hadoop PIG Tutorial: Introduktion, installation och exempel

Exempel Pig Script

Vi kommer att använda Pig Scripts för att hitta antalet produkter som säljs i varje land.

Ingång: Vår indatauppsättning är en CSV-fil, FörsäljningJan2009.csv

Steg 1) Starta Hadoop

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

Steg 2) Pig in Big Data tar en fil från HDFS i MapReduce-läge och sparar resultaten tillbaka till HDFS.

Kopiera filer FörsäljningJan2009.csv (lagrat på lokalt filsystem, ~/input/SalesJan2009.csv) till HDFS (Hadoop Distributed File System) Hemkatalog

Här i detta Apache Pig-exempel finns filen i mappinmatning. Om filen är lagrad på någon annan plats, ge det namnet

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

Hadoop PIG Tutorial: Introduktion, installation och exempel

Kontrollera om en fil faktiskt har kopierats eller inte.

$HADOOP_HOME/bin/hdfs dfs -ls /

Hadoop PIG Tutorial: Introduktion, installation och exempel

Steg 3) Griskonfiguration

Först, navigera till $PIG_HOME/conf

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

Hadoop PIG Tutorial: Introduktion, installation och exempel

Öppet gris.egenskaper använda en textredigerare som du väljer, och ange sökväg till loggfilen med pig.logfile

sudo gedit pig.properties

Hadoop PIG Tutorial: Introduktion, installation och exempel

Loger kommer att använda den här filen för att logga fel.

Steg 4) Kör kommandot 'pig' som startar Pig-kommandotolken som är ett interaktivt skal Pig-frågor.

pig

Hadoop PIG Tutorial: Introduktion, installation och exempel

Steg 5)I Grunt-kommandotolken för Pig, kör nedan Pig-kommandon i ordning.

— A. Ladda filen som innehåller data.

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

Tryck på Enter efter detta kommando.

Hadoop PIG Tutorial: Introduktion, installation och exempel

— B. Gruppera data efter fält Land

GroupByCountry = GROUP salesTable BY Country;

Hadoop PIG Tutorial: Introduktion, installation och exempel

— C. För varje tupel in "Grupp för land", generera den resulterande strängen av formuläret-> Namn på land: Antal sålda produkter

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

Tryck på Enter efter detta kommando.

Hadoop PIG Tutorial: Introduktion, installation och exempel

— D. Lagra resultaten av Data Flow i katalogen "pig_output_sales" på HDFS

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

Hadoop PIG Tutorial: Introduktion, installation och exempel

Detta kommando kommer att ta lite tid att utföra. När du är klar bör du se följande skärm

Hadoop PIG Tutorial: Introduktion, installation och exempel

Steg 6) Resultatet kan ses genom kommandogränssnittet som,

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

Hadoop PIG Tutorial: Introduktion, installation och exempel

Resultaten kan också ses via ett webbgränssnitt som-

Resultat via ett webbgränssnitt-

Öppet http://localhost:50070/ i en webbläsare.

Hadoop PIG Tutorial: Introduktion, installation och exempel

Välj nu "Bläddra i filsystemet" och navigera upp till /user/hduser/pig_output_sales

Hadoop PIG Tutorial: Introduktion, installation och exempel

Öppet del-r-00000

Hadoop PIG Tutorial: Introduktion, installation och exempel