Vodič za Hadoop Pig: Što je Apache Pig? Architekstura, primjer

Počet ćemo s uvodom u Svinju

Što je Apache Pig?

Pig je programski jezik visoke razine koristan za analizu velikih skupova podataka. Pig je rezultat razvojnih napora u Yahoo!

U okviru MapReduce, programe je potrebno prevesti u niz faza Map i Reduce. Međutim, ovo nije model programiranja s kojim su analitičari podataka upoznati. Dakle, kako bi se premostio ovaj jaz, apstrakcija pod nazivom Pig izgrađena je na vrhu Hadoopa.

Apache Pig omogućuje ljudima da se više usredotoče na analiziranje masovnih skupova podataka i trošiti manje vremena na pisanje Map-Reduce programa. Slično svinjama, koje jedu bilo što, svinja Apache programski jezik dizajniran je za rad s bilo kojom vrstom podataka. Zato i naziv, Prase!

Zato i naziv, Prase!
Zato i naziv, Prase!

U ovom vodiču za Apache Pig za početnike naučit ćete-

Svinja Architektura

The ArchiTektura Pig sastoji se od dvije komponente:

  1. svinjski latinski, koji je jezik
  2. Okruženje za vrijeme izvođenja, za pokretanje PigLatin programa.

Pig Latin program sastoji se od niza operacija ili transformacija koje se primjenjuju na ulazne podatke da bi se proizveo izlaz. Ove operacije opisuju tok podataka koji se prevodi u izvršni prikaz, pomoću Hadoop Pig izvršnog okruženja. Ispod, rezultati ovih transformacija su nizovi MapReduce poslova kojih programer nije svjestan. Dakle, na neki način, Pig in Hadoop omogućuje programeru da se usredotoči na podatke, a ne na prirodu izvršenja.

PigLatin je relativno čvršći jezik koji koristi poznate ključne riječi iz obrade podataka, npr. pridruživanje, grupiranje i filtriranje.

Vodič za Hadoop PIG: Uvod, instalacija i primjer
PIG Architektura

Načini izvršenja:

Pig u Hadoopu ima dva načina izvršavanja:

  1. Lokalni način rada: U ovom načinu rada Hadoop Pig jezik radi u jednom JVM i koristi lokalni datotečni sustav. Ovaj način je prikladan samo za analizu malih skupova podataka pomoću Pig-a u Hadoopu
  2. Način Map Reduce: U ovom načinu rada prevode se upiti napisani na latinskom MapReduce poslove i izvode se na Hadoop klasteru (klaster može biti pseudo ili potpuno distribuiran). Način MapReduce s potpuno distribuiranim klasterom koristan je za pokretanje Piga na velikim skupovima podataka.

Kako preuzeti i instalirati Pig

U ovom vodiču za Apache Pig naučit ćemo kako preuzeti i instalirati Pig:

Prije nego počnemo sa stvarnim procesom, provjerite imate li instaliran Hadoop. Promijenite korisnika u 'hduser' (ID koji se koristi tijekom konfiguracije Hadoop-a, možete se prebaciti na ID korisnika koji se koristi tijekom vaše konfiguracije Hadoop-a)

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Korak 1) Preuzmite stabilno najnovije izdanje Pig Hadoopa s bilo kojeg od ogledala dostupnih na

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

Vodič za Hadoop PIG: Uvod, instalacija i primjer

odabrati tar.gz (i ne src.tar.gz) datoteka za preuzimanje.

Korak 2) Nakon što je preuzimanje završeno, idite do direktorija koji sadrži preuzetu tar datoteku i premjestite tar na mjesto gdje želite postaviti Pig Hadoop. U ovom slučaju, premjestit ćemo se u /usr/local

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Premjestite se u direktorij koji sadrži Pig Hadoop datoteke

cd /usr/local

Ekstrahirajte sadržaj tar datoteke kao ispod

sudo tar -xvf pig-0.12.1.tar.gz

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Korak 3). izmijeniti ~ / .bashrc da biste dodali varijable okoline povezane s Pigom

Otvoren ~ / .bashrc datoteku u bilo kojem uređivaču teksta po vašem izboru i napravite donje izmjene-

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

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Korak 4) Sada, izvor ove konfiguracije okruženja pomoću donje naredbe

. ~/.bashrc

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Korak 5) Moramo ponovno kompajlirati PIG podržati Hadoop 2.2.0

Evo koraka za to -

Idite u matični direktorij PIG-a

cd $PIG_HOME

Instalirajte Ant

sudo apt-get install ant

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Napomena: preuzimanje će započeti i trajat će ovisno o brzini interneta.

Ponovno kompajlirajte PIG

sudo ant clean jar-all -Dhadoopversion=23

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Imajte na umu da se u ovom procesu rekompilacije preuzima više komponenti. Dakle, sustav bi trebao biti spojen na internet.

Također, u slučaju da je ovaj proces negdje zapeo i ne vidite nikakav pokret na naredbenom retku više od 20 minuta, pritisnite ctrl + c i ponovno pokrenite istu naredbu.

U našem slučaju to traje 20 minuta

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Korak 6) Testirajte Svinja instalacija pomoću naredbe

pig -help

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Primjer svinjskog scenarija

Koristit ćemo Pig Scripts kako bismo pronašli broj prodanih proizvoda u svakoj zemlji.

Ulazni: Naš ulazni skup podataka je CSV datoteka, ProdajaSiječanj2009.csv

Korak 1) Pokrenite Hadoop

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

Korak 2) Svinja u velikim podacima uzima datoteku iz HDFS u načinu MapReduce i pohranjuje rezultate natrag u HDFS.

Kopiraj datoteke ProdajaSiječanj2009.csv (pohranjeno u lokalnom datotečnom sustavu, ~/input/SalesJan2009.csv) u matični direktorij HDFS (Hadoop distribuirani datotečni sustav).

Ovdje u ovom primjeru Apache Piga, datoteka je u ulaznoj mapi. Ako je datoteka pohranjena na nekom drugom mjestu, dajte to ime

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

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Provjerite je li datoteka stvarno kopirana ili ne.

$HADOOP_HOME/bin/hdfs dfs -ls /

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Korak 3) Konfiguracija svinje

Prvo idite na $PIG_HOME/conf

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

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Otvoren svinja.svojstva pomoću uređivača teksta po vašem izboru i navedite stazu datoteke dnevnika pomoću pig.logfile

sudo gedit pig.properties

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Loger će koristiti ovu datoteku za zapisivanje pogrešaka.

Korak 4) Pokrenite naredbu 'pig' koja će pokrenuti Pig naredbeni redak koji je interaktivna ljuska Pig upita.

pig

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Korak 5)U naredbenom retku Grunt za Pig, redom izvršite Pig naredbe.

— A. Učitajte datoteku koja sadrži podatke.

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

Pritisnite Enter nakon ove naredbe.

Vodič za Hadoop PIG: Uvod, instalacija i primjer

— B. Grupirajte podatke po polju Država

GroupByCountry = GROUP salesTable BY Country;

Vodič za Hadoop PIG: Uvod, instalacija i primjer

— C. Za svaku torku u 'Grupiraj po zemlji', generirajte rezultirajući niz u obliku-> Naziv zemlje: Broj prodanih proizvoda

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

Pritisnite Enter nakon ove naredbe.

Vodič za Hadoop PIG: Uvod, instalacija i primjer

— D. Pohranite rezultate protoka podataka u imenik 'pig_output_sales' na HDFS-u

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

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Za izvršenje ove naredbe trebat će neko vrijeme. Kada završite, trebali biste vidjeti sljedeći zaslon

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Korak 6) Rezultat se može vidjeti kroz naredbeno sučelje kao,

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

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Rezultati se također mogu vidjeti putem web sučelja kao-

Rezultati putem web sučelja-

Otvoren http://localhost:50070/ u web pregledniku.

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Sada odaberite "Pregledaj datotečni sustav" i idite do /user/hduser/pig_output_sales

Vodič za Hadoop PIG: Uvod, instalacija i primjer

Otvoren dio-r-00000

Vodič za Hadoop PIG: Uvod, instalacija i primjer