MapReduce adalah konsep pemrograman penting yang harus Anda kuasai untuk menjadi insinyur data profesional. Ini memberikan solusi untuk sistem manajemen file data besar terdistribusi. Oleh karena itu, memahami latar belakang teori MapReduce akan memudahkan Anda mempelajari teknik itu sendiri.

Tapi apa itu MapReduce, dan bagaimana cara kerjanya di sistem file terdistribusi? Anda akan mengetahuinya di postingan ini.

Apa Itu MapReduce?

MapReduce adalah model rekayasa data yang diterapkan pada program atau aplikasi yang memproses logika data besar dalam cluster paralel server atau node. Ini mendistribusikan logika pemrosesan di beberapa node data dan menggabungkan hasilnya ke server-klien.

MapReduce memastikan bahwa pemrosesannya cepat, hemat memori, dan andal, terlepas dari ukuran datanya.

Hadoop File System (HDFS), Google File System (GFS), Apache Kafka, GlusterFS, dan lainnya adalah contoh sistem file big data terdistribusi yang menggunakan algoritma MapReduce.

Apa itu Sistem File Terdistribusi?

Sistem file terdistribusi (DFS) adalah metode penyimpanan dalam komputasi yang melibatkan pemisahan file data besar menjadi potongan yang lebih kecil dan menyebarkannya ke beberapa server di dalam sistem. Ini memungkinkan klien dari berbagai sumber untuk menulis dan membaca data, berbagi, dan menjalankan logika yang dapat diprogram pada data—langsung dari mana saja.

Sistem file terdistribusi biasanya terdiri dari server utama (juga disebut NameNode di Hadoop), cluster paralel, dan beberapa node atau server yang berisi potongan data yang direplikasi, semuanya dalam satu data Tengah. Namun, setiap cluster dalam sistem file terdistribusi menampung ratusan hingga ribuan node ini.

Server utama secara otomatis mendeteksi perubahan dalam cluster. Sehingga dapat menetapkan peran sesuai dengan setiap node.

Ketika server utama menerima file data, ia mengirimkannya ke cluster di dalam DFS. Cluster ini memotong dan mendistribusikan data ke setiap node di dalamnya. Setiap node kemudian mereplikasi data menjadi apa yang disebut blok data untuk membentuk rantai. Pada titik ini, setiap node menjadi server chunk.

Terkait:Apa Itu Pusat Data dan Mengapa Itu Penting?

Selain mengelola akses ke data, server utama menyimpan anotasi metadata pada setiap file. Dengan begitu, ia tahu node mana yang menangani file mana di setiap cluster.

Bagaimana MapReduce Bekerja di Sistem File Terdistribusi?

Seperti disebutkan sebelumnya, data besar tersedia di beberapa server potongan di DFS. Salah satu cara untuk melakukan logika yang dapat diprogram pada file data ini adalah dengan menggabungkannya menjadi satu. Anda kemudian dapat menariknya ke satu server, yang sekarang menangani logika.

Meskipun itu adalah cara konvensional untuk meminta data, masalahnya adalah data menjadi utuh kembali di dalam satu server. Jadi satu server masih harus mengelola logika pada beberapa petabyte data sekaligus. Sayangnya, ini adalah masalah yang ingin dipecahkan oleh sistem pada awalnya. Jadi itu bukan praktik terbaik.

Terkait:Cara Query Beberapa Tabel Database Sekaligus Dengan SQL Joins

Selanjutnya, agregasi seperti itu ke dalam satu server menimbulkan beberapa risiko kinerja. Ini mungkin berkisar dari kerusakan server, efisiensi perhitungan yang buruk, latensi tinggi, konsumsi memori tinggi, dan kerentanan hingga lebih banyak lagi.

Tetapi cara lain untuk menjalankan logika yang dapat diprogram adalah dengan membiarkan data dalam potongan-potongan di dalam setiap server terdistribusi. Dan kemudian menyuntikkan fungsi logika ke setiap server. Ini berarti setiap server chunk dalam sebuah cluster sekarang menangani perhitungannya. Menggunakan pendekatan ini berarti tidak perlu menggabungkan atau menarik data ke dalam satu server.

Bahwa ada konsep MapReduce dalam sistem file data terdistribusi. Ini memastikan bahwa satu server tidak perlu menarik data dari sumbernya. Sebagai gantinya, ia menyebarkan fungsi pemrosesan (MapReduce) menjadi beberapa node chunk secara terpisah cluster, sehingga setiap node dalam setiap cluster menangani logika secara individual tanpa membebani satu pun server.

Akibatnya, beberapa server menangani logika pada bit data secara bersamaan. Distribusi tenaga kerja di antara server ini menghasilkan kinerja yang optimal dan keamanan yang lebih tinggi, di antara hal-hal positif lainnya.

Bagaimana Hasil MapReduce Diproses dalam DFS?

Berikut cara kerja seluruh pemrosesan MapReduce di DFS:

  • Server utama menerima permintaan data besar (fungsi MapReduce) dari klien.
  • Kemudian mengirimkan ini ke setiap cluster untuk menyebarkannya di setiap node di dalamnya.
  • Setiap node memproses fungsi MapReduce dan mengumpulkan hasilnya.
  • Server lain mengumpulkan hasil dari setiap node dan mengirimkannya kembali ke server utama.
  • Server utama kemudian mengirimkan hasilnya sebagai respons ke klien.

Jadi, satu-satunya tugas server utama adalah mengirim hasil yang siap dihitung ke klien, mendengarkan perubahan, dan mengelola akses ke data. Itu tidak melakukan perhitungan apa pun. Inilah sebabnya mengapa sebagian besar aplikasi komputasi awan sangat cepat meskipun jumlah data yang mereka proses.

Apa Sebenarnya Map dan Reduce di MapReduce?

MapReduce menggunakan dua logika pemrograman untuk memproses data besar dalam sistem manajemen file terdistribusi (DFS). Ini adalah fungsi peta dan perkecil.

Itu peta fungsi melakukan pekerjaan pemrosesan pada setiap node data di setiap cluster dari sistem file terdistribusi. Itu mengurangi function kemudian menggabungkan hasil yang dikembalikan oleh setiap server potongan dan meneruskannya ke server lain dalam DFS untuk agregasi hasil. Server penerima mengirimkan perhitungan ini ke server utama, yang memposting nilai yang dikembalikan ke server sisi klien.

Apa Yang Terjadi Saat Server Chunk Mati?

Server dalam sistem file terdistribusi (DFS) kadang-kadang mungkin mengalami downtime. Anda mungkin berpikir ini akan merusak seluruh sistem, tetapi ternyata tidak.

Ada sistem dalam komputasi yang mencegah kerusakan yang akan datang seperti itu. Ini disebut toleransi kesalahan.

Terkait:Apa itu Komputasi Awan? Bagaimana Teknologi Cloud Bekerja?

Oleh karena itu, bahkan ketika server mati selama pemrosesan data, toleransi kesalahan memastikan bahwa server utama segera mendeteksinya. Dan karena ada replika potongan data di seluruh node, server utama langsung mentransfer pekerjaan pemrosesan ke server lain. Dengan begitu, waktu henti server dalam DFS tidak memengaruhi pemrosesan data.

MapReduce Memudahkan Pemrosesan Data Besar

MapReduce adalah model penting yang memudahkan komputasi dalam sistem file terdistribusi. Karena memungkinkan beberapa node untuk menjalankan perhitungan secara bersamaan, ini adalah metode cepat yang digunakan oleh berbagai raksasa teknologi untuk memecahkan banyak masalah yang menyertai analisis data besar.

Google, Amazon, IBM, antara lain, adalah contoh perusahaan yang menggunakan konsep ini. Google, misalnya, menerapkan konsep MapReduce untuk membawa hasil kueri selama pencarian Google.

Apa Itu Big Data, Mengapa Penting, dan Seberapa Berbahayakah?

Data besar memberi kekuatan pada banyak industri dan berdampak pada semua kehidupan kita. Tetapi apakah itu lebih berbahaya atau bermanfaat?

Baca Selanjutnya

MembagikanMenciakSurel
Topik-topik terkait
  • Pemrograman
  • Pemrograman
  • Data besar
  • Analisis data
Tentang Penulis
Idowu Omisola (133 Artikel Diterbitkan)

Idowu sangat menyukai teknologi dan produktivitas yang cerdas. Di waktu luangnya, dia bermain-main dengan coding dan beralih ke papan catur ketika dia bosan, tetapi dia juga suka melepaskan diri dari rutinitas sesekali. Semangatnya untuk menunjukkan kepada orang-orang tentang teknologi modern memotivasinya untuk menulis lebih banyak.

More From Idowu Omisola

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk kiat teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Klik di sini untuk berlangganan