Video: Beruang kutub memakan anjing di Kanada - Tomonews 2024
Pada intinya, bahasa Latin Babi adalah bahasa dataflow , di mana Anda mendefinisikan aliran data dan serangkaian transformasi yang diterapkan pada data saat mengalir melalui aplikasi anda Ini berbeda dengan bahasa flow control (seperti C atau Java), di mana Anda menulis serangkaian instruksi.
Dalam bahasa aliran kontrol, Anda menggunakan konstruksi seperti loop dan logika kondisional (seperti pernyataan if). Anda tidak akan menemukan loop dan jika pernyataan dalam bahasa Latin Babi.
Jika Anda memerlukan beberapa meyakinkan bahwa bekerja dengan Babi adalah baris yang lebih mudah untuk cangkul daripada harus menulis Map and Reduce programs, mulailah dengan melihat beberapa sintaks Babi nyata:
A = LOAD 'data_file. txt';. B = GROUP …; … C = FILTER …;. DUMP B;. STORE C KE 'Hasil';
Beberapa teks dalam contoh ini benar-benar terlihat seperti bahasa Inggris, bukan? Tidak terlalu menakutkan, setidaknya pada saat ini. Melihat setiap baris pada gilirannya, Anda dapat melihat aliran dasar program Babi. (Perhatikan bahwa kode ini bisa menjadi bagian dari naskah atau dikeluarkan pada shell interaktif yang disebut Grunt.)
-
Load: Anda pertama kali memuat (LOAD) data yang ingin Anda manipulasi.
Seperti pada pekerjaan MapReduce yang khas, data tersebut tersimpan dalam HDFS. Agar program Babi mengakses data, pertama-tama beri tahu babi file atau file apa yang akan digunakan. Untuk tugas itu, Anda menggunakan perintah LOAD 'data_file'.
Di sini, 'data_file' dapat menentukan file HDFS atau direktori. Jika sebuah direktori ditentukan, semua file dalam direktori tersebut dimasukkan ke dalam program.
Jika data disimpan dalam format file yang tidak dapat diakses secara native oleh Babi, Anda dapat menambahkan fungsi PENGGUNAAN ke pernyataan LOAD untuk menentukan fungsi yang ditentukan pengguna yang dapat dibaca (dan interpretasikan) data.
-
Transform: Anda menjalankan data melalui serangkaian transformasi yang, jauh di bawah tenda dan jauh dari apapun yang harus Anda pedulikan, diterjemahkan ke dalam satu set Map and Reduce tasks.
Logika transformasi adalah tempat semua manipulasi data terjadi. Di sini, Anda dapat FILTER keluar baris yang tidak menarik, BERGABUNG dua set file data, data GROUP untuk membangun agregasi, hasil ORDER, dan banyak lagi.
-
Dump: Akhirnya, Anda membuang (DUMP) hasilnya ke layar
atau
Store (STORE) hasil dalam file di suatu tempat.
Anda biasanya menggunakan perintah DUMP untuk mengirim output ke layar saat Anda men-debug program Anda. Ketika program Anda masuk ke produksi, Anda cukup mengubah panggilan DUMP ke panggilan STORE sehingga setiap hasil dari menjalankan program Anda disimpan dalam file untuk pemrosesan atau analisis lebih lanjut.