Rumah Keuangan Pribadi Cara Menggunakan MapReduce untuk Data Big - dummies

Cara Menggunakan MapReduce untuk Data Big - dummies

Daftar Isi:

Video: Aditya Riaddy - Apa itu Apache Spark dan Penggunaanya untuk Big Data Analytics | BukaTalks 2024

Video: Aditya Riaddy - Apa itu Apache Spark dan Penggunaanya untuk Big Data Analytics | BukaTalks 2024
Anonim

MapReduce adalah kerangka kerja perangkat lunak yang ideal untuk data besar karena memungkinkan pengembang menulis program yang dapat memproses data dalam jumlah besar secara tidak terstruktur secara paralel di seluruh kelompok prosesor terdistribusi.

Fungsi peta untuk data besar

Fungsi map telah menjadi bagian dari banyak bahasa pemrograman fungsional selama bertahun-tahun. Peta telah diregruasi sebagai teknologi inti untuk memproses daftar elemen data.

Keuntungan lain untuk pemrograman fungsional tidak harus secara tegas mengatur pergerakan atau arus data. Ini membebaskan programmer dari pengelolaan data dan penempatan data secara eksplisit. Akhirnya, urutan operasi pada data tidak diresepkan.

Salah satu cara untuk menyelesaikan solusinya adalah dengan mengidentifikasi data masukan dan membuat daftar:

mylist = ("semua kabupaten di AS yang berpartisipasi dalam pemilihan umum paling akhir") > Buat fungsi howManyPeople menggunakan fungsi peta

.

Ini hanya memilih kabupaten dengan lebih dari 50.000 orang: peta howManyPeople (mylist) = [howManyPeople "county 1"; howManyPeople "county 2"; howManyPeople "county 3"; howManyPeople "county 4"; …] Sekarang buat daftar keluaran baru dari semua negara dengan populasi lebih dari 50.000:


(tidak, county 1; ya, county 2; tidak, county 3; yes, county 4;?, County nnn)

Fungsi dijalankan tanpa membuat perubahan pada daftar aslinya. Selain itu, Anda dapat melihat bahwa setiap elemen dari daftar keluaran memetakan ke elemen yang sesuai dari daftar input, dengan ya atau tidak terpasang. Jika county telah memenuhi persyaratan lebih dari 50.000 orang, fungsi peta mengidentifikasikannya dengan iya. Jika tidak, tidak ada indikasi.

Tambahkan fungsi pengurangan untuk data besar

Seperti fungsi peta,

reduce

telah menjadi fitur bahasa pemrograman fungsional selama bertahun-tahun. Fungsi mengurangi mengambil output dari fungsi peta dan "mengurangi" daftar dengan cara apa pun yang diinginkan pemrogram. Langkah pertama yang dibutuhkan fungsi pengurangan adalah memberi nilai pada sesuatu yang disebut akumulator, yang memegang nilai awal. Setelah menyimpan nilai awal pada akumulator, fungsi mengurangi kemudian memproses setiap elemen dari daftar dan melakukan operasi yang Anda butuhkan di seluruh daftar.

Di akhir daftar, fungsi pengurangan mengembalikan nilai berdasarkan operasi yang ingin Anda lakukan pada daftar output.

Misalkan Anda perlu mengidentifikasi negara di mana mayoritas suara adalah untuk kandidat Demokrat. Ingatlah bahwa fungsi peta howManyPeople Anda melihat setiap elemen dari daftar masukan dan membuat daftar keluaran negara dengan lebih dari 50.000 orang (ya) dan kabupaten dengan kurang dari 50.000 orang (tidak).

Setelah meminta fungsi peta howManyPeople, Anda akan ditinggalkan dengan daftar output berikut:

(no, county 1; yes, county 2; no, county 3; yes, county 4;, county nnn)

Sekarang ini adalah masukan untuk mengurangi fungsi Anda. Inilah bentuknya:

countylist = (tidak, county 1; ya, county 2; no, county 3; yes, county 4;?, County nnn) reduce isDemocrat (countylist)

Proses pengurangan fungsi setiap elemen daftar dan mengembalikan daftar semua kabupaten dengan populasi lebih dari 50.000, di mana mayoritas memilih Demokrat.

Menempatkan peta data yang besar dan mengurangi bersama

Kadang-kadang menghasilkan daftar output cukup. Demikian juga, terkadang melakukan operasi pada setiap elemen dalam daftar sudah cukup. Paling sering, Anda ingin melihat sejumlah besar data masukan, memilih elemen tertentu dari data, dan kemudian menghitung sesuatu yang bernilai dari potongan data yang relevan.

Anda tidak ingin mengubah daftar masukan itu sehingga Anda dapat menggunakannya dengan cara yang berbeda dengan asumsi dan data baru.

Pengembang perangkat lunak merancang aplikasi berdasarkan algoritma. Algoritma

tidak lebih dari serangkaian langkah yang perlu dilakukan dalam melayani keseluruhan tujuan. Mungkin terlihat sedikit seperti ini: Mulailah dengan sejumlah besar atau data atau catatan. Iterasi atas data.

  1. Gunakan fungsi peta untuk menarik sesuatu yang menarik dan buat daftar keluaran.

  2. Atur daftar output untuk dioptimalkan untuk diproses lebih lanjut.

  3. Gunakan fungsi pengurangan untuk menghitung satu set hasil.

  4. Menghasilkan hasil akhir.

  5. Pemrogram dapat menerapkan semua jenis aplikasi dengan menggunakan pendekatan ini, namun contohnya sampai saat ini sangat sederhana, sehingga nilai sebenarnya dari MapReduce mungkin tidak terlihat. Apa yang terjadi bila Anda memiliki data masukan yang sangat besar? Bisakah Anda menggunakan algoritma yang sama pada terabyte data? Kabar baiknya adalah ya.

  6. Semua operasi tampak independen. Itu karena memang begitu. Kekuatan sesungguhnya dari MapReduce adalah kemampuan untuk membagi dan menaklukkan. Ambillah masalah yang sangat besar dan pecahkan menjadi potongan yang lebih kecil dan lebih mudah diatur, beroperasi pada masing-masing potongan secara terpisah, dan kemudian tarik semuanya pada akhirnya. Selanjutnya, fungsi peta bersifat komutatif - dengan kata lain, perintah agar suatu fungsi dijalankan tidak masalah.

Jadi MapReduce dapat melakukan pekerjaannya pada mesin yang berbeda dalam jaringan. Ini juga bisa menarik dari beberapa sumber data, baik internal maupun eksternal. MapReduce melacak karyanya dengan membuat kunci unik untuk memastikan bahwa semua pemrosesan terkait untuk memecahkan masalah yang sama.Kunci ini juga digunakan untuk menarik semua output bersamaan pada akhir semua tugas terdistribusi.

Cara Menggunakan MapReduce untuk Data Big - dummies

Pilihan Editor

Perancang Minigame Minigame - dummies

Perancang Minigame Minigame - dummies

Sebelum menulis semua kode untuk membuat Minecraft Minigame, Anda perlu merancang permainan Anda. The Gameplay Loop adalah proses sederhana yang bisa Anda ikuti untuk memastikan permainan Anda menyenangkan, menantang, dan lengkap. The Gameplay Loop memiliki empat bagian: Start: Buat adegan dasar. Tujuan: Menambahkan cara untuk menang dan ...

Menciptakan Efek Air dan Es di Minecraft - dummies

Menciptakan Efek Air dan Es di Minecraft - dummies

Satu hal yang rapi tentang Minecraft adalah bahwa beberapa fisika realistis sedang dimainkan dalam permainan. Misalnya, jika Anda memiliki air dan Anda memasukkan es ke dalamnya, itu akan membeku! Oke, mungkin di dunia nyata, menambahkan es tidak membuat air membeku, tapi memang membuatnya lebih dingin. Anda dapat melihat ini ...

Mendapatkan Minecraft Experience Points - dummies

Mendapatkan Minecraft Experience Points - dummies

Di Minecraft, experience points, XP untuk jangka pendek, dikumpulkan dari bola pengalaman bercahaya. Sebagai pemain mengumpulkan cukup bola dan meningkatkan tingkat pengalaman mereka, mereka akan dapat menggunakan tabel dan landasan yang mempesona untuk meningkatkan kemampuan banyak item seperti senjata, baju besi, dan peralatan. Jadi, bagaimana Anda bisa cepat mendapatkan ini ...

Pilihan Editor

Bagaimana Mendidik dengan Infografis Informasi Dokumentual - dummies

Bagaimana Mendidik dengan Infografis Informasi Dokumentual - dummies

Infomasi editorial sama dengan artikel berita karena tujuan utamanya adalah untuk mengirimkan informasi. Di bawah payung grafis editorial, ada beberapa tipe yang berbeda, dengan keseimbangan bias dan objektivitas yang berbeda. Berikut adalah beberapa melihat: Badai salju menghantam kota Anda. Koran lokal menciptakan grafik yang menunjukkan hujan salju ...

Bagaimana Mengimpor Sketsa ke Ilustrator untuk Menciptakan Infografis - dummies

Bagaimana Mengimpor Sketsa ke Ilustrator untuk Menciptakan Infografis - dummies

Bahkan di dunia kabel ini, seniman masih suka sketsa Kabar baik! Sketsa kasar Anda dapat dengan mudah digunakan dalam draf infografis Anda. Anda dapat memindai sketsa atau mengambil gambar sketsa Anda dengan telepon Anda dan mengirim e-mail ke komputer Anda sendiri. Mereka tidak perlu diwarnai, cukup jelas bagi Anda untuk ...

Bagaimana cara memasukkan ilustrasi di Infografis Anda - jeleknya

Bagaimana cara memasukkan ilustrasi di Infografis Anda - jeleknya

Infografis yang baik (jelas) harus mencakup seni yang bagus. Ilustrasi mempromosikan alur cerita, menentukan elemen secara visual, dan mencerahkan halaman yang mungkin diisi dengan tipe abu-abu. Ilustrasi bisa berupa gambar fisik, semacam bagan atau grafik, atau bahkan garis waktu. Kehidupan sehari-hari Anda dipenuhi dengan contoh bagaimana ilustrasi ...

Pilihan Editor

GED Contoh Pertanyaan: Penalaran Melalui Bahasa Seni Membaca Informasi Teknis - dummies

GED Contoh Pertanyaan: Penalaran Melalui Bahasa Seni Membaca Informasi Teknis - dummies

Tentang Penalaran Melalui bagian Seni Bahasa GED, Anda mungkin diminta untuk menjawab pertanyaan tentang bagian teknis. Ini bisa termasuk petunjuk cara melengkapi, seperti berikut. Pertanyaan dalam artikel ini mengacu pada kutipan berikut dari Russell Hart's Photography For Dummies, 2nd Edition (Wiley). Apa Rahasia Untuk ...

GED Contoh Pertanyaan: Pertanyaan singkat tentang Ilmu Pengetahuan - dummies

GED Contoh Pertanyaan: Pertanyaan singkat tentang Ilmu Pengetahuan - dummies

Di beberapa titik selama bagian Ilmu Pengetahuan dari Tes GEE, Anda akan diminta untuk membuat jawaban singkat. Anda akan diberi sebuah bagian dan mengajukan pertanyaan yang perlu Anda tanggapi. Buat respons Anda jelas dan ringkas. Bagian Jawaban Jawaban Semua orang mengenal keju cheddar. Orang-orang meletakkan ...

GED Contoh Pertanyaan: Ilmu Sosial dan Media - dummies

GED Contoh Pertanyaan: Ilmu Sosial dan Media - dummies

Di bagian Ilmu Sosial GED, Anda mungkin diminta untuk menjawab pertanyaan tentang berbagai bentuk media, termasuk siaran berita. Lihatlah contoh berikut di bawah ini. Pertanyaan dalam artikel ini mengacu pada siaran berita berikut. Berita Lingkungan Dunia Selamat malam dan selamat datang di World Environmental News. Cerita kami ini ...