Apache Pig - Pesan Oleh

Itu ORDER BY operator digunakan untuk menampilkan konten relasi dalam urutan yang diurutkan berdasarkan satu atau lebih bidang.

Sintaksis

Diberikan di bawah ini adalah sintaks dari ORDER BY operator.

grunt> Relation_name2 = ORDER Relatin_name1 BY (ASC|DESC);

Contoh

Asumsikan bahwa kita memiliki file bernama student_details.txt di direktori HDFS /pig_data/ seperti gambar dibawah.

student_details.txt

001,Rajiv,Reddy,21,9848022337,Hyderabad
002,siddarth,Battacharya,22,9848022338,Kolkata
003,Rajesh,Khanna,22,9848022339,Delhi 
004,Preethi,Agarwal,21,9848022330,Pune 
005,Trupthi,Mohanthy,23,9848022336,Bhuwaneshwar 
006,Archana,Mishra,23,9848022335,Chennai 
007,Komal,Nayak,24,9848022334,trivendram 
008,Bharathi,Nambiayar,24,9848022333,Chennai

Dan kami telah memuat file ini ke Pig dengan nama relasi student_details seperti gambar dibawah.

grunt> student_details = LOAD 'hdfs://localhost:9000/pig_data/student_details.txt' USING PigStorage(',')
   as (id:int, firstname:chararray, lastname:chararray,age:int, phone:chararray, city:chararray);

Sekarang mari kita mengurutkan relasi dalam urutan menurun berdasarkan usia siswa dan menyimpannya ke dalam relasi lain bernama order_by_data menggunakan ORDER BY operator seperti yang ditunjukkan di bawah ini.

grunt> order_by_data = ORDER student_details BY age DESC;

Verifikasi

Verifikasi relasinya order_by_data menggunakan DUMP operator seperti yang ditunjukkan di bawah ini.

grunt> Dump order_by_data;

Keluaran

Ini akan menghasilkan keluaran berikut, menampilkan isi relasi order_by_data.

(8,Bharathi,Nambiayar,24,9848022333,Chennai)
(7,Komal,Nayak,24,9848022334,trivendram)
(6,Archana,Mishra,23,9848022335,Chennai) 
(5,Trupthi,Mohanthy,23,9848022336,Bhuwaneshwar)
(3,Rajesh,Khanna,22,9848022339,Delhi) 
(2,siddarth,Battacharya,22,9848022338,Kolkata)
(4,Preethi,Agarwal,21,9848022330,Pune) 
(1,Rajiv,Reddy,21,9848022337,Hyderabad)