- MAP REDUCE
MapReduce adalah model pemrogramana rilisan Google yang ditujukan untuk memproses data berukuran raksasa secara terdistribusi dan parallel dalam
cluster yang terdiri atas ribuan computer.
MapReduce dibagi menjadi 2 proses utama,
yaitu
Map dan Reduce. Proses Map bertugas untuk mengumpulkan informasi dari potongan-potongan data yang terditribusi dalam tiap komputer dalam cluster (kelompok komputer yang saling terhubung). Hasilnya deserahkan kepada proses Reduce untuk
diproses lebih lanjut. Hasil proses Reduce merupakan hasil akhir yang dikirim ke pengguna.
- DAFTAR PRODUK OPEN SOURCE MENGENAI MAP REDUCE
uApache Hadoop
uPig
uCascading
uMicrosoft Dryad
uIBM MapReduce Tool for Eclipse
uSkynet
uCouchDB
- NOSQL
NoSQL adalah sebuah konsep mengenai penyimpanan data non-relasional. NoSQL sangat berguna pada data-data yang terus-menerus berkembang, dimana data tersebut sangat kompleks sehingga sebuah database relational tidak lagi bisa mengakomodir.
Salah satu bentuknya adalah ketika suatu data saling berhubungan satu sama lain, maka akan muncul proses duplikasi data. Dimana data saling memanggil ke beberapa permintaan, tambahan data baru, perubahan data, dan lain-lain dengan key yang sama. Karena faktor hubungan antar data yang sama terjadi terus-menerus, mendorong faktor redudansi data, data menjadi berlipat-lipat, dan pada akhirnya akan menyebabkan crash pada database berkonsep RDBMS.
- KELEBIHAN NOSQL
uNoSQL bisa menampung data yang terstruktur, semi terstruktur dan tidak terstuktur secara efesien dalam skala besar.
uMenggunakan OOP dalam pengaksesan atau manipulasi datanya.
ujika database noSQL di jalankan di cluster server (multiple server) maka data akan tersebar secara otomatis dan merata keseluruh
server
- KEKURANGAN NOSQL
uHostingnya mahal. beberapa layanan di luar negeri mencharge biaya 100-200USD untuk hosting database noSQL
uSulitnya mencari hosting Cpanel yang mendukung database MongoDB atau database noSQL lainnya.
- MACAM - MACAM NOSQL
1. COUCH DB
CouchDB yang dikembangkan oleh
Apache lebih dulu muncul jauh sebelum mongoDB yaitu pada tahun
2005. CouchDB tidak menyimpan datanya dalam tabel melainkan dalam dokumen seperti halnya mongoDB.
Basis data ini juga merupakan proyek open source serta dikembangkan dalam bahasa pemrograman Erlang oleh karena itu kita bisa ikut berkontribusi dalam pengembangan CouchDB agar
basis data ini lebih baik.
2. CASSANDRA
Cassandra merupakan sebuah sistem penyimpanan data
terdistribusi untuk menangani jumlah data
yang sangat besar dan terstruktur. Cassandra juga dikembangkan Apache.
Cassandra juga merupakan aplikasi open
source yang ditulis dalam bahasa Java dengan lisensi
Apache License 2.0.
Untuk memproses datanya,
Cassandra menggunakan bahasa sendiri yang mirip dengan SQL yaitu
Cassandra Query Language (CQL).
3. MONGO DB
MongoDB merupakan basis data yang paling populer diantara
basis data NoSQL lainnya. Hal ini dikarenakan pemasangan maupun penggunaan mongoDB tidaklah sulit atau merepotkan penggunanya. Selain itu mongoDB juga merupakan salah satu basis data yang open source.
MongoDB merupakan basis data NoSQL yang document based. Ia menyimpan data-datanya dalam suatu dokumen JSON yang disebut BSON (Binary JSON).
Dikembangkan sejak tahun 2009, mongoDB sekarang telah mendukung hampir semua bahasa pemrograman untuk dapat berinteraksi dengan mongoDB.
4. RIAK
Riak merupakan basis data NoSQL terdistribusi yang menyimpan datanya dalam bentu key-value. Riak menawarkan fitur high availability, fault tolerance,
operational simplicaity, dan scalability.
Riak memiliki dua versi yakni Open source edition dan Enterprise edition. Enterprise edition menawarkan dukungan berbayar intensif dari pengembangnya. Pengguna Open
source edition dapat bermigrasi kapan saja ke
Enterprise edition jika dibutuhkan. Erlang ditulis dalam bahasa pemrograman Erlang dengan lisensi Apache License 2.0
5. REDIS
Redis merupakan basis data berbasis key-value. Redis merupakan singkatan dari REmote DIctionary
Server. Basis data ini dikembangkan oleh Salvatore Sanfilippo pada tahun 2009 dan ditulis dalam bahasa C. Redis banyak dipilih karena memiliki fitur in-memory,
networked, dan durabilitas tinggi.
Redis mendukung banyak bahasa pemrograman seperti ActionScript, C/C++, C#, Clojure, Common LIsp, Dart, Erlang, Go, Haskell, Haxe, Io, Java, JavaScript (Node.js), Lua, Objective-C, Perl, PHP, Pure
Data, Python, R, Ruby, Scala, Smalltalk, dan Tcl.
Tidak ada komentar:
Posting Komentar