Sisi Peta Bergabung Vs. Ikuti



Posting ini membahas sisi Peta Hadoop bergabung Vs. Ikuti. Pelajari juga apa itu pengurangan peta, tabel gabung, sisi gabung, keuntungan menggunakan operasi gabungan sisi peta di Hive

Di blog ini, kita akan membahas tentang Sisi peta bergabung dan kelebihannya dibandingkan operasi gabungan normal Sarang lebah .Ini adalah konsep penting yang perlu Anda pelajari untuk menerapkan Anda .Namun sebelum mengetahui hal tersebut, sebaiknya kita memahami terlebih dahulu konsepnya 'Ikuti' dan apa yang terjadi secara internal saat kami melakukan join in Sarang lebah .

Ikuti adalah klausa yang menggabungkan rekaman dari dua tabel (atau Kumpulan Data).
Asumsikan bahwa kita memiliki dua tabel A dan B. Ketika kita melakukan operasi penggabungan pada mereka, itu akan mengembalikan record yang merupakan kombinasi dari semua kolom dari A dan B.





Sekarang mari kita pahami fungsi normal join dengan sebuah contoh ..

Kapanpun, kami menerapkan operasi gabungan, pekerjaan akan ditugaskan ke tugas Mengurangi Peta yang terdiri dari dua tahap- a 'Panggung peta 'Dan' Kurangi panggung '. Tugas seorang pembuat peta selama Tahap Peta adalah untuk 'Baca' data dari tabel gabungan dan ke 'kembali' itu 'Join key' dan 'Nilai gabungan' pasangkan menjadi file perantara. Selanjutnya pada tahap shuffle, file antara ini kemudian diurutkan dan digabungkan. Tugas peredam selama tahap pengurangan adalah mengambil hasil yang diurutkan ini sebagai masukan dan menyelesaikan tugas penggabungan.



perbedaan antara xml dan html

  • Gabung sisi peta mirip dengan gabung tetapi semua tugas akan dilakukan oleh mapper sendiri.

  • Gabungan Sisi Peta sebagian besar cocok untuk tabel kecil untuk mengoptimalkan tugas.



Bagaimana cara gabungan sisi peta mengoptimalkan tugas?

Asumsikan bahwa kita memiliki dua tabel yang salah satunya adalah tabel kecil. Saat kita mengirimkan tugas pengurangan peta, tugas lokal Mengurangi Peta akan dibuat sebelum tugas asli bergabung dengan Map Reduce yang akan membaca data tabel kecil dari HDFS dan menyimpannya ke dalam tabel hash dalam memori. Setelah membaca, ini membuat serial tabel hash dalam memori menjadi file tabel hash.

Pada tahap selanjutnya, ketika tugas asli penggabungan Map Reduce sedang berjalan, ini memindahkan data dalam file tabel hash ke cache terdistribusi Hadoop, yang mengisi file-file ini ke setiap disk lokal pembuat peta. Jadi semua pembuat peta dapat memuat file tabel hash persisten ini kembali ke memori dan melakukan pekerjaan penggabungan seperti sebelumnya. Alur eksekusi dari gabungan peta yang dioptimalkan ditunjukkan pada gambar di bawah ini. Setelah pengoptimalan, tabel kecil hanya perlu dibaca sekali. Juga jika beberapa pembuat peta berjalan pada mesin yang sama, cache terdistribusi hanya perlu mendorong satu salinan file tabel hash ke mesin ini.

Keuntungan menggunakan gabungan sisi peta:

  • Gabungan sisi peta membantu meminimalkan biaya yang dikeluarkan untuk penyortiran dan penggabungan dalam mengocok dan mengurangi tahapan.
  • Gabungan sisi peta juga membantu meningkatkan kinerja tugas dengan mengurangi waktu untuk menyelesaikan tugas.

Kekurangan Gabungan sisi peta:

  • Gabungan sisi peta cukup hanya jika salah satu tabel tempat Anda menjalankan operasi gabungan sisi peta cukup kecil untuk dimasukkan ke dalam memori. Oleh karena itu, tidak cocok untuk melakukan penggabungan sisi peta pada tabel yang merupakan data besar di keduanya.

Contoh Sederhana untuk Map Reduce Bergabung:

Mari kita buat dua tabel:

  • Emp : berisi detail Karyawan seperti nama Karyawan, ID Karyawan, dan Departemen tempat dia berada.

  • Dept: berisi detail seperti Nama Departemen, ID Departemen, dan sebagainya.

Buat dua file input seperti yang ditunjukkan pada gambar berikut untuk memuat data ke dalam tabel yang dibuat.

employee.txt

dept.txt

Sekarang, mari kita muat data ke dalam tabel.

Mari kita lakukan Sisi peta Ikuti pada dua tabel untuk mengekstrak daftar departemen di mana setiap karyawan bekerja.

Di sini meja kedua dept adalah meja kecil. Ingat, selalu jumlah departemen akan lebih sedikit daripada jumlah karyawan dalam suatu organisasi.

Sekarang mari kita lakukan tugas yang sama dengan bantuan penggabungan sisi-pengurangan normal.

instal php 7 di windows

Saat menjalankan kedua gabungan, Anda dapat menemukan dua perbedaan:

  • Gabungan pengurangan peta telah menyelesaikan pekerjaan dalam waktu yang lebih singkat jika dibandingkan dengan waktu yang dibutuhkan dalam gabungan normal.

  • Map-reduce join telah menyelesaikan tugasnya tanpa bantuan peredam apa pun sedangkan gabungan normal menjalankan pekerjaan ini dengan bantuan satu peredam.

Karenanya, Gabung Sisi Peta adalah taruhan terbaik Anda ketika salah satu tabel cukup kecil untuk muat dalam memori untuk menyelesaikan pekerjaan dalam waktu singkat.

Di Lingkungan waktu nyata , Anda akan memiliki kumpulan data dengan sejumlah besar data. Jadi, melakukan analisis dan mengambil data akan memakan waktu jika salah satu set data berukuran lebih kecil. Dalam beberapa kasus Gabungan sisi peta akan membantu menyelesaikan pekerjaan dalam waktu yang lebih singkat.

Tidak pernah ada waktu yang lebih baik untuk menguasai Hadoop! Mulailah sekarang dengan kursus Big Data dan Hadoop yang dikurasi khusus oleh Edureka.

apa itu token di java

Referensi:
https://www.facebook.com/notes/facebook-engineering/join-optimization-in-apache-hive/470667928919

Posting terkait:

7 Cara Pelatihan Big Data Dapat Mengubah Organisasi Anda