Deze sectie geeft een overzicht van wat apache-pig is en waarom een ontwikkelaar het misschien wil gebruiken.
Het moet ook alle grote onderwerpen binnen apache-pig vermelden en naar de gerelateerde onderwerpen verwijzen. Aangezien de documentatie voor apache-pig nieuw is, moet u mogelijk eerste versies van die gerelateerde onderwerpen maken.
Vereisten (r0.16.0)
Verplicht
Volgens de huidige Apache-Pig
documentatie ondersteunt het alleen Unix
en Windows
besturingssystemen.
Optioneel
Download de nieuwste Pig-release
Download de nieuwste versie van pig van http://pig.apache.org/releases.html#Download
Installatie
mkdir Pig
cd Downloads/
tar zxvf pig-(latest-version).tar.gz
tar zxvf pig-(latest-version).tar.gz
mv pig-(latest-version).tar.gz/* /home/Pig/
Configuratie
Na het installeren van Apache Pig moeten we het configureren.
Open het .bashrc bestand
vim ~/.bashrc
Stel in het .bashrc-bestand de volgende variabelen in:
export PIG_HOME = /home/Pig
export PATH = PATH:/home/Pig/bin
sla het bestand op en laad bashrc opnieuw in de omgeving met
. ~/.bashrc
De versie van Pig verifiëren
pig –version
Als de installatie is geslaagd, geeft de bovenstaande opdracht het geïnstalleerde Pig-versienummer weer.
Installatie van varkens testen
pig -h
Dit zou alle mogelijke commando's moeten weergeven die bij het varken horen
Uw varken is nu lokaal geïnstalleerd en u kunt het uitvoeren met de lokale parameter zoals
pig -x local
Verbinding maken met Hadoop
Als Hadoop1.x of 2.x op het cluster is geïnstalleerd en de omgevingsvariabele HADOOP_HOME is ingesteld.
je kunt Pig verbinden met Hadoop door de regel in de .bashrc toe te voegen zoals eerder
export PIG_CLASSPATH = $HADOOP_HOME/conf
Lopend Varken
Uitvoeringsmodi
U kunt Pig uitvoeren met de opdracht pig
(bin / pig) of door jar
bestand (java -cp pig.jar) uit te voeren
PIG
scripts kunnen in 3 verschillende modi worden uitgevoerd:
Lokale modus
pig -x local ...
Mapreduce-modus (standaardmodus)
pig -x mapreduce ...
(or)
pig ...
Tez lokale modus
pig -x tez ...
Interactieve modus
Pig kan worden uitgevoerd in interactieve modus met behulp van de Grunt
shell. Latijnse Latijnse uitspraken en opdrachten kunnen interactief in deze shell worden ingevoerd.
Voorbeeld
$ pig -x <mode> <enter>
grunt>
Mode
kan een van de uitvoeringsmodi zijn, zoals uitgelegd in de vorige sectie.
Batchmodus
Pig kan ook worden uitgevoerd in batchmodus. Hier wordt een .pig
bestand met een lijst met pig-instructies en -opdrachten verstrekt.
Voorbeeld
$ pig -x <mode> <script.pig>
grunt>
Op dezelfde manier kan Mode
een van de uitvoeringsmodi zijn, zoals uitgelegd in de vorige sectie.
Pig biedt een engine voor het parallel uitvoeren van datastromen op Hadoop. Het bevat een taal, Pig Latin, voor het weergeven van deze gegevensstromen. Pig Latin bevat operators voor veel van de traditionele gegevensbewerkingen (samenvoegen, sorteren, filteren, enz.), Evenals de mogelijkheid voor gebruikers om hun eigen functies voor het lezen, verwerken en schrijven van gegevens te ontwikkelen. Pig is een open source-project van Apache. Dit betekent dat gebruikers het gratis kunnen downloaden als bron of binair bestand, het zelf kunnen gebruiken, eraan kunnen bijdragen en het, onder de voorwaarden van de Apache-licentie, in hun producten kunnen gebruiken en naar eigen inzicht kunnen wijzigen.
Invoer bestand
Mary had a little lamb
its fleece was white as snow
and everywhere that Mary went
the lamb was sure to go.
Varken Word Count Code
-- Load input from the file named Mary, and call the single
-- field in the record 'line'.
input = load 'mary' as (line);
-- TOKENIZE splits the line into a field for each word.
-- flatten will take the collection of records returned by
-- TOKENIZE and produce a separate record for each one, calling the single
-- field in the record word.
words = foreach input generate flatten(TOKENIZE(line)) as word;
-- Now group them together by each word.
grpd = group words by word;
-- Count them.
cntd = foreach grpd generate group, COUNT(words);
-- Print out the results.
dump cntd;
uitgang
Mary,2
had,1
a,1
little,1
lamb,2
its,1
fleece,1
was,2
white,1
as,1
snow,1
and,1
everywhere,1
that,1
went,1
the,1
sure,1
to,1
go,1