Video: Susan Etlinger: What do we do with all this big data? 2024
Babi Latin adalah bahasa untuk program Babi. Babi menerjemahkan naskah Latin Babi ke dalam pekerjaan MapReduce yang dapat dieksekusi dalam kelompok Hadoop. Ketika datang dengan Pig Latin, tim pengembang mengikuti tiga prinsip desain utama:
-
Keep it simple . Pig Latin menyediakan metode yang efisien untuk berinteraksi dengan Java MapReduce. Ini adalah abstraksi, dengan kata lain, yang menyederhanakan pembuatan program paralel pada cluster Hadoop untuk aliran data dan analisis. Tugas kompleks mungkin memerlukan serangkaian transformasi data yang saling terkait - rangkaian tersebut dikodekan sebagai urutan aliran data .
Menulis transformasi data dan arus sebagai skrip Latin Babi alih-alih program Java MapReduce membuat program ini lebih mudah untuk menulis, memahami, dan merawat karena a) Anda tidak perlu menulis pekerjaan di Jawa, b) Anda tidak perlu memikirkan MapReduce, dan c) Anda tidak perlu membuat kode kustom untuk mendukung tipe data yang kaya.
Babi Latin menyediakan bahasa yang lebih sederhana untuk mengeksploitasi cluster Hadoop Anda, sehingga memudahkan lebih banyak orang untuk memanfaatkan kekuatan Hadoop dan menjadi produktif lebih cepat.
-
Buatlah pintar. Anda mungkin ingat bahwa Compiler Latin Babi melakukan pekerjaan untuk mengubah program Babi Latin menjadi serangkaian pekerjaan Java MapReduce. Caranya adalah dengan memastikan bahwa kompiler dapat mengoptimalkan pelaksanaan pekerjaan Java MapReduce ini secara otomatis, yang memungkinkan pengguna untuk fokus pada semantik dan bukan bagaimana mengoptimalkan dan mengakses data.
Bagi Anda tipe SQL di luar sana, diskusi ini akan terdengar asing. SQL disiapkan sebagai kueri deklaratif yang Anda gunakan untuk mengakses data terstruktur yang disimpan dalam RDBMS. Mesin RDBMS pertama-tama menerjemahkan kueri ke metode akses data dan kemudian melihat statistik dan menghasilkan serangkaian pendekatan akses data. Pengoptimal berbasis biaya memilih pendekatan yang paling efisien untuk eksekusi.
-
Jangan membatasi perkembangan. Buat Pig extensible agar pengembang dapat menambahkan fungsi untuk mengatasi masalah bisnis mereka.
Gudang data RDBMS tradisional menggunakan pola pemrosesan data ETL, di mana Anda e menyimpan data dari sumber luar, t menggantinya agar sesuai dengan kebutuhan operasional Anda, dan kemudian > l masuk ke target akhir, entah itu gudang data operasional, gudang data, atau varian database lainnya. Namun, dengan data yang besar, Anda biasanya ingin mengurangi jumlah data yang telah Anda pindahkan, sehingga Anda akhirnya membawa pemrosesan ke data itu sendiri.
Bahasa untuk arus data Babi, oleh karena itu, meneruskan pendekatan ETL yang lama, dan berlanjut dengan ELT sebagai gantinya:
E xtract data dari berbagai sumber Anda, l oad itu ke HDFS, dan kemudian t memberi ransform itu seperlunya untuk menyiapkan data untuk analisis lebih lanjut.