Apache Pig - Egzekucja

W poprzednim rozdziale wyjaśniliśmy, jak zainstalować Apache Pig. W tym rozdziale omówimy, jak uruchomić Apache Pig.

Tryby wykonywania Apache Pig

Możesz uruchomić Apache Pig w dwóch trybach, a mianowicie: Local Mode i HDFS mode.

Tryb lokalny

W tym trybie wszystkie pliki są instalowane i uruchamiane z lokalnego hosta i lokalnego systemu plików. Nie ma potrzeby korzystania z Hadoop ani HDFS. Ten tryb jest zwykle używany do celów testowych.

Tryb MapReduce

W trybie MapReduce ładujemy lub przetwarzamy dane istniejące w systemie plików Hadoop (HDFS) przy użyciu Apache Pig. W tym trybie za każdym razem, gdy wykonujemy instrukcje Pig Latin w celu przetworzenia danych, na zapleczu wywoływane jest zadanie MapReduce w celu wykonania określonej operacji na danych istniejących w HDFS.

Mechanizmy wykonywania Apache Pig

Skrypty Apache Pig można wykonywać na trzy sposoby, mianowicie w trybie interaktywnym, trybie wsadowym i trybie osadzonym.

  • Interactive Mode(Powłoka Grunt) - Możesz uruchomić Apache Pig w trybie interaktywnym za pomocą powłoki Grunt. W tej powłoce można wprowadzić instrukcje Pig Latin i uzyskać dane wyjściowe (za pomocą operatora Dump).

  • Batch Mode (Skrypt) - Możesz uruchomić Apache Pig w trybie wsadowym, pisząc skrypt Pig Latin w jednym pliku z rozszerzeniem .pig rozbudowa.

  • Embedded Mode (UDF) - Apache Pig zapewnia możliwość definiowania własnych funkcji (User Defined Functions) w językach programowania, takich jak Java, i używanie ich w naszym skrypcie.

Wywołanie powłoki Grunt

Możesz wywołać powłokę Grunt w żądanym trybie (lokalny / MapReduce) za pomocą −x opcja, jak pokazano poniżej.

Tryb lokalny Tryb MapReduce

Command −

$ ./pig –x local

Command −

$ ./pig -x mapreduce

Output -

Output -

Każde z tych poleceń powoduje wyświetlenie zachęty powłoki Grunt, jak pokazano poniżej.

grunt>

Możesz wyjść z powłoki Grunt za pomocą ‘ctrl + d’.

Po wywołaniu powłoki Grunt można wykonać skrypt Pig, wprowadzając bezpośrednio w nim instrukcje Pig Latin.

grunt> customers = LOAD 'customers.txt' USING PigStorage(',');

Wykonywanie Apache Pig w trybie wsadowym

Możesz napisać cały skrypt Pig Latin w pliku i wykonać go przy użyciu rozszerzenia –x command. Załóżmy, że mamy skrypt Pig w pliku o nazwiesample_script.pig jak pokazano niżej.

Sample_script.pig

student = LOAD 'hdfs://localhost:9000/pig_data/student.txt' USING
   PigStorage(',') as (id:int,name:chararray,city:chararray);
  
Dump student;

Teraz możesz wykonać skrypt w powyższym pliku, jak pokazano poniżej.

Tryb lokalny Tryb MapReduce
$ pig -x local Sample_script.pig $ pig -x mapreduce Sample_script.pig

Note - Omówimy szczegółowo, jak uruchomić skrypt Pig w programie Bach mode i w embedded mode w kolejnych rozdziałach.