Hadoop Pig Tutorial: Hva er Apache Pig? Architecture, Eksempel

Vi starter med introduksjonen til Gris

Hva er Apache Pig?

Pig er et programmeringsspråk på høyt nivå som er nyttig for å analysere store datasett. Pig var et resultat av utviklingsinnsats hos Yahoo!

I et MapReduce-rammeverk må programmer oversettes til en serie med Map- og Reduce-stadier. Dette er imidlertid ikke en programmeringsmodell som dataanalytikere er kjent med. Så, for å bygge bro over dette gapet, ble en abstraksjon kalt Pig bygget på toppen av Hadoop.

Apache Pig gjør det mulig for folk å fokusere mer på analysere massedatasett og bruke mindre tid på å skrive Map-Reduce-programmer. Ligner på griser, som spiser hva som helst, Apache-grisen programmeringsspråk er designet for å fungere med alle typer data. Det er derfor navnet, Gris!

Det er derfor navnet, Gris!
Det er derfor navnet, Gris!

I denne nybegynneropplæringen Apache Pig vil du lære-

Pig Architecture

De ArchiTecture of Pig består av to komponenter:

  1. Grise latin, som er et språk
  2. Et kjøretidsmiljø, for å kjøre PigLatin-programmer.

Et Pig Latin-program består av en serie operasjoner eller transformasjoner som brukes på inngangsdataene for å produsere utdata. Disse operasjonene beskriver en dataflyt som er oversatt til en kjørbar representasjon, av Hadoop Pig-utførelsesmiljøet. Under er resultatene av disse transformasjonene serier med MapReduce-jobber som en programmerer ikke er klar over. Så på en måte lar Pig in Hadoop programmereren fokusere på data i stedet for utførelsens natur.

PigLatin er et relativt stivnet språk som bruker kjente nøkkelord fra databehandling, f.eks. Join, Group og Filter.

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel
PIG Architecture

Utførelsesmoduser:

Pig in Hadoop har to utførelsesmoduser:

  1. Lokal modus: I denne modusen kjører Hadoop Pig-språket i en singel JVM og bruker lokalt filsystem. Denne modusen er kun egnet for analyse av små datasett ved bruk av Pig in Hadoop
  2. Kartreduksjonsmodus: I denne modusen blir spørsmål skrevet på griselatin oversatt til MapReduce jobber og kjøres på en Hadoop-klynge (klyngen kan være pseudo- eller fullstendig distribuert). MapReduce-modus med den fullt distribuerte klyngen er nyttig for å kjøre Pig på store datasett.

Hvordan laste ned og installere Pig

Nå i denne Apache Pig-opplæringen lærer vi hvordan du laster ned og installerer Pig:

Før vi starter med selve prosessen, sørg for at du har Hadoop installert. Endre bruker til 'hduser' (id brukt mens Hadoop konfigurasjon, du kan bytte til bruker-ID som ble brukt under Hadoop-konfigurasjonen)

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Trinn 1) Last ned den stabile siste utgivelsen av Pig Hadoop fra en av speilsidene som er tilgjengelige på

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

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Plukke ut tar.gz (og ikke src.tar.gz) fil for å laste ned.

Trinn 2) Når en nedlasting er fullført, naviger til katalogen som inneholder den nedlastede tar-filen og flytt taren til stedet der du vil sette opp Pig Hadoop. I dette tilfellet vil vi flytte til /usr/local

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Flytt til en katalog som inneholder Pig Hadoop-filer

cd /usr/local

Pakk ut innholdet i tar-filen som nedenfor

sudo tar -xvf pig-0.12.1.tar.gz

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Steg 3). endre ~ / .bashrc for å legge til griselaterte miljøvariabler

Åpen ~ / .bashrc fil i hvilken som helst tekstredigerer etter eget valg og gjør endringer nedenfor-

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

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Trinn 4) Nå, kilde denne miljøkonfigurasjonen ved å bruke kommandoen nedenfor

. ~/.bashrc

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Trinn 5) Vi må kompilere på nytt PIG å støtte Hadoop 2.2.0

Her er trinnene for å gjøre dette-

Gå til PIG-hjemmekatalogen

cd $PIG_HOME

Installer Ant

sudo apt-get install ant

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Merk: Nedlastingen starter og vil ta tid i henhold til internetthastigheten din.

Rekompiler PIG

sudo ant clean jar-all -Dhadoopversion=23

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Vær oppmerksom på at i denne rekompileringsprosessen lastes flere komponenter ned. Så et system bør være koblet til internett.

I tilfelle denne prosessen sitter fast et sted og du ikke ser noen bevegelse på ledeteksten i mer enn 20 minutter, trykker du på Ctrl + c og kjør den samme kommandoen på nytt.

I vårt tilfelle tar det 20 minutter

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Trinn 6) Test Pig installasjon ved hjelp av kommandoen

pig -help

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Eksempel Pig Script

Vi vil bruke Pig Scripts for å finne antall produkter som selges i hvert land.

Inngang: Inndatasettet vårt er en CSV-fil, SalgJan2009.csv

Trinn 1) Start Hadoop

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

Trinn 2) Pig in Big Data tar en fil fra HDFS i MapReduce-modus og lagrer resultatene tilbake til HDFS.

Kopier fil SalgJan2009.csv (lagret på lokalt filsystem, ~/input/SalesJan2009.csv) til HDFS (Hadoop Distributed File System) Hjemmekatalog

Her i dette Apache Pig-eksemplet er filen i mappeinndata. Hvis filen er lagret et annet sted, gi det navnet

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

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Kontroller om en fil faktisk er kopiert eller ikke.

$HADOOP_HOME/bin/hdfs dfs -ls /

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Trinn 3) Grisekonfigurasjon

Først, naviger til $PIG_HOME/conf

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

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Åpen gris.eiendommer ved å bruke et tekstredigeringsprogram etter eget valg, og spesifiser loggfilbanen ved å bruke pig.logfile

sudo gedit pig.properties

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Loger vil bruke denne filen til å logge feil.

Trinn 4) Kjør kommandoen 'pig' som vil starte Pig-kommandoprompten som er et interaktivt skall Pig-spørringer.

pig

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Trinn 5)I Grunt-kommandoprompten for Pig, utfør under Pig-kommandoer i rekkefølge.

— A. Last inn filen som inneholder 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);

Trykk Enter etter denne kommandoen.

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

— B. Grupper data etter felt Land

GroupByCountry = GROUP salesTable BY Country;

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

— C. For hver tuppel inn "GruppeByLand", generer den resulterende strengen av skjemaet-> Navn på land: Antall solgte produkter

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

Trykk Enter etter denne kommandoen.

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

— D. Lagre resultatene av Data Flow i katalogen 'pig_output_sales' på HDFS

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

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Denne kommandoen vil ta litt tid å utføre. Når du er ferdig, bør du se følgende skjermbilde

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Trinn 6) Resultatet kan sees gjennom kommandogrensesnittet som,

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

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Resultatene kan også sees via et nettgrensesnitt som-

Resultater gjennom et nettgrensesnitt-

Åpen http://localhost:50070/ i en nettleser.

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Velg nå "Bla gjennom filsystemet" og naviger opp til /user/hduser/pig_output_sales

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel

Åpen del-r-00000

Hadoop PIG Tutorial: Introduksjon, installasjon og eksempel