Apache Pig adalah platform untuk menganalisa data set yang besar. Pada dasarnya adalah sebuah bahasa yang disebut Pig Latin yang digunakan untuk mendefinsikan analtyic jobs, seperti merging, filtering dan transformation data. Jadi Pig Latin adalah high level language, dapat dibandingkan dengan SQL.
Apache Pig adalah abstraction untuk MapReduce, sangat berguna untuk melakukan ETL (Extract, Transform dan Load).
Apache Pig sendiri adalah procedural language, memudahkan dalam spesifikasi data flow untuk berbagai transformasi dan fungsi.
Contoh penggunaan Pig Latin untuk menghitung jumlah kata.
inputinput_lines = LOAD '/tmp/nama_file.txt' AS (line:chararray); words = FOREACH input_lines GENERATE FLATTEN(TOKENIZE(line)) AS word; filtered_words = FILTER words BY word MATCHES '\\w+'; word_groups = GROUP filtered_words BY word; word_count = FOREACH word_groups GENERATE COUNT(filtered_words) AS count, GROUP AS word; ordered_word_count = ORDER word_count BY count DESC; STORE ordered_word_count INTO '/tmp/number-of-words-in-nama-file';
Untuk menjalankan job diatas, Pig akan mengkompile instruksi diatas kedalam MapReduce jobs, kemudian dikirim ke Hadoop untuk melakukan paralel processing.

Pig Latin memiliki built-in function yang memudahkan coding tugas analitik seperti:
- Evaluation, contoh: AVG, CONCAT, COUNT, MAX, MIN, SUM dan lainnya.
- Math, contoh: ABS, SIN, COS, TAN, SQRT, ROUND dan lainnya.
- Strings, contoh: SUBSTRING, REGEX_SEARCH, UPPER, LOWER dan lainnya.
- Dan fungsi lainnya untuk DATETIME, TUPPLE dan MAP object.
Anda juga bisa membuat user-defined function dengan bahasa yang didukung: Java, Jython, JavaScript, Ruby, Groovy dan Python. Atau cara lainnya embedd Pig ke bahasa tersebut.
Jadi sederhananya, Pig adalah high-level framework untuk menjalakan MapReduce jobs pada Hadoop Clusters.
Pada exam tidak akan ditest untuk membuat program Pig Latin, namun memahami apa itu Apache Pig dapat berguna memilih produk saat membantu klien migrasi ke Google Cloud Platform.