Apache Pig - Eksekusi

Di bab sebelumnya, kami menjelaskan cara menginstal Apache Pig. Pada bab ini, kita akan membahas bagaimana menjalankan Apache Pig.

Mode Eksekusi Apache Pig

Anda dapat menjalankan Apache Pig dalam dua mode, yaitu, Local Mode dan HDFS mode.

Mode lokal

Dalam mode ini, semua file diinstal dan dijalankan dari host lokal dan sistem file lokal Anda. Tidak perlu Hadoop atau HDFS. Mode ini umumnya digunakan untuk tujuan pengujian.

Mode MapReduce

Mode MapReduce adalah dimana kita memuat atau mengolah data yang ada di Hadoop File System (HDFS) menggunakan Apache Pig. Dalam mode ini, setiap kali kita menjalankan pernyataan Pig Latin untuk memproses data, tugas MapReduce dipanggil di back-end untuk melakukan operasi tertentu pada data yang ada di HDFS.

Mekanisme Eksekusi Apache Pig

Skrip Apache Pig dapat dijalankan dengan tiga cara, yaitu mode interaktif, mode batch, dan mode tertanam.

  • Interactive Mode(Grunt shell) - Anda dapat menjalankan Apache Pig dalam mode interaktif menggunakan shell Grunt. Di shell ini, Anda bisa memasukkan pernyataan Pig Latin dan mendapatkan hasilnya (menggunakan operator Dump).

  • Batch Mode (Script) - Anda dapat menjalankan Apache Pig dalam mode Batch dengan menulis script Pig Latin dalam satu file dengan .pig perpanjangan.

  • Embedded Mode (UDF) - Apache Pig menyediakan ketentuan untuk mendefinisikan fungsi kita sendiri (User Defined Functions) dalam bahasa pemrograman seperti Java, dan menggunakannya dalam skrip kami.

Memanggil Grunt Shell

Anda dapat memanggil shell Grunt dalam mode yang diinginkan (lokal / MapReduce) menggunakan −x pilihan seperti yang ditunjukkan di bawah ini.

Mode lokal Mode MapReduce

Command −

$ ./pig –x lokal

Command −

$ ./pig -x mapreduce

Output -

Output -

Salah satu dari perintah ini memberi Anda prompt shell Grunt seperti yang ditunjukkan di bawah ini.

grunt>

Anda dapat keluar dari shell Grunt menggunakan ‘ctrl + d’.

Setelah menjalankan shell Grunt, Anda dapat menjalankan skrip Pig dengan langsung memasukkan pernyataan Pig Latin di dalamnya.

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

Menjalankan Apache Pig dalam Mode Batch

Anda dapat menulis seluruh skrip Pig Latin dalam sebuah file dan menjalankannya menggunakan –x command. Misalkan kita memiliki skrip Pig dalam file bernamasample_script.pig seperti gambar dibawah.

Sample_script.pig

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

Sekarang, Anda dapat menjalankan skrip pada file di atas seperti yang ditunjukkan di bawah ini.

Mode lokal Mode MapReduce
$ babi -x lokal Sample_script.pig $ pig -x mapreduce Sample_script.pig

Note - Kami akan membahas secara rinci cara menjalankan skrip Pig Bach mode dan masuk embedded mode di bab-bab selanjutnya.