Nama : Rastiko Kuncorojati
NPM : 58414937
Kelas : 4IA20
Mata Kuliah : Pengantar Komputasi Modern
Dosen : Lely Prananingrum
MapReduce dan NoSQL (Not Only SQL)
- MAPREDUCE
MapReduce adalah model pemrograman rilisan
Google yang ditujukan untuk memproses data berukuran raksasa secara
terdistribusi dan paralel dalam cluster yang terdiri atas ribuan komputer.
Dalam memproses data, secara garis besar MapReduce dapat dibagi dalam dua
proses yaitu proses Map dan proses Reduce. Kedua jenis proses ini
didistribusikan atau dibagi-bagikan ke setiap komputer dalam suatu cluster
(kelompok komputer yang salih terhubung) dan berjalan secara paralel tanpa
saling bergantung satu dengan yang lainnya. Proses Map bertugas untuk
mengumpulkan informasi dari potongan-potongan data yang terdistribusi dalam
tiap komputer dalam cluster. Hasilnya diserahkan kepada proses Reduce untuk
diproses lebih lanjut. Hasil proses Reduce merupakan hasil akhir yang dikirim
ke pengguna. Untuk menggunakan MapReduce, seorang programer cukup membuat dua
program yaitu program yang memuat kalkulasi atau prosedur yang akan dilakukan
oleh proses Map dan Reduce. Jadi tidak perlu pusing memikirkan bagaimana
memotong-motong data untuk dibagi-bagikan kepada tiap komputer, dan
memprosesnya secara paralel kemudian mengumpulkannya kembali. Semua proses ini
akan dikerjakan secara otomatis oleh MapReduce yang dijalankan diatas Google
File System.
Tujuan
MapReduce adalah model pemrograman rilisan
Google yang ditujukan untuk memproses data berukuran raksasa secara
terdistribusi dan paralel dalam cluster yang terdiri atas ribuan komputer.
Dalam memproses data, secara garis besar MapReduce dapat dibagi dalam dua
proses yaitu proses Map dan proses Reduce.
Tahapan proses
MapReduce
MapReduce memiliki dua tahap dalam memproses data yaitu map danreduce. Tahap
pertama dari MapReduce disebut map.
- Map melakukan transformasi setiap
data elemen input menjadi data elemen output. Map dapat
dicontohkan dengan suatu fungsi toUpper(str) yang akan mengubah setiap
huruf kecil (lowercase) menjadi huruf besar (uppercase).
Setiap data elemen huruf kecil (lowercase) yang menjadi input dari
fungsi ini akan ditransformasi menjadi data output elemen yang berupa
huruf besar (uppercase). Map memiliki fungsi yang
dipanggil untuk setiap input yang menghasilkan output pasangan intermediate <key, value>.
- Reduce adalah tahap yang dilakukan
setelah mapping selesai. Reduce akan
memeriksa semua value input dan mengelompokkannya menjadi
satu value output. Reduce menghasilkan output pasanganintermediate .
Sebelum memasuki tahap reduce, pasangan intermediate <key, value>
dikelompokkan berdasarkan key, tahap ini dinamakan tahap shuffle.
B. NoSQL
(Not Only SQL)
NoSQL adalah istilah untuk menyatakan berbagai hal
yang didalamnya termasuk database sederhana yang berisikan key dan
value seperti Memcache, ataupun yang lebih canggih yaitu non-database
relational seperti MongoDB, Cassandra, CouchDB, dan yang lainnya.
Wikipedia menyatakan NoSQL adalah sistem menejemen
database yang berbeda dari sistem menejemen database relasional yang klasik
dalam beberapa hal. NoSQL mungkin tidak membutuhkan skema table dan umumnya
menghindari operasi join dan berkembang secara horisontal. Akademisi menyebut
database seperti ini sebagai structured storage, istilah yang didalamnya
mencakup sistem menejemen database relasional.
Kesimpulan
Map Reduce danNoSQL (Not Only SQL) adalah sebuah
pemogramaan framework guna untuk membantu user mengembangankan sebuah data yang
ukuran besar dapat terdistribusi satu sama lain. Map-Reduce adalah salah satu
konsep teknis yang sangat penting di dalam teknologi cloud terutama
karena dapat diterapkannya dalam lingkungan distributed computing. Dengan demikian
akan menjamin skalabilitas aplikasi kita.
Salah satu contoh penerapan nyata map-reduce ini dalam
suatu produk adalah yang dilakukan Google. Dengan inspirasi
dari functional programming map dan reduce Google bisa menghasilkan
filesystem distributed yang sangat scalable, Google Big
Table. Dan juga terinspirasi dari Google, pada ranah open source terlihat
percepatan pengembangan framework lainnya yang juga bersifat terdistribusi dan
menggunakan konsep yang sama, project open source tersebut bernama Apache Hadoop.
Tidak ada komentar:
Posting Komentar