Cloud Computing? pasti banyak dari para pembaca yang sudah sering dengar kata tersebut, atau jika belum pernah dengar, mungkin pernah dengar istilah dalam bahasa Indonesia-nya, yaitu “Komputasi Awan”. Ada banyak sudut pandang untuk menjelaskan apa itu Cloud Computing.
Tentu kita semua adalah para pemakai
listrik dalam kehidupan sehari-hari. Untuk bisa menikmati listrik, kita tidak
perlu mendirikan infrastruktur pembangkit listrik sendiri kan? yang perlu kita
lakukan adalah mendaftar ke PLN, dan kita tinggal bayar biaya listrik
berdasarkan jumlah penggunaan kita tiap bulan. Saat kita butuh daya tambahan
karena suatu tujuan khusus (misal-nya kita ada acara nikahan), kita tinggal
bilang ke PLN untuk tambah daya, dan suatu saat nanti ketika ingin turun daya
lagi, kita tinggal bilang juga ke PLN. Bisa dikatakan penambahan daya listrik
ini sifat-nya ELASTIS dan
(harus-nya) bisa dilakukan segera.
Ketika memakai layanan listrik dari
PLN, kita tidak perlu pusing untuk memikirkan bagaimana PLN memenuhi kebutuhan
listrik kita, bagaimana ketika mereka ada kerusakan alat, bagaimana proses
perawatan alat-alat tersebut, dsb. Inti-nya kita cukup tahu bahwa kita bisa
menikmati listrik dan berkewajiban membayar biaya tersebut tiap bulan,
sedangkan PLN sendiri berkewajiban untuk memenuhi kebutuhan kita berdasarkan
level layanan mereka.
Nah, analogi PLN diatas, adalah
sedikit gambaran Cloud Computing,
dimana Cloud Computing ini
bertugas untuk memberikan layanan dan kita adalah user/pemakai dari layanan
tersebut. Kita tidak perlu pusing memikirkan bagaimana mereka (penyedia
layananan Cloud Computing)
menyedikan layanan tersebut, yang penting mereka bisa memberikan standar
layanan sesuai dengan apa yang kita butuhkan. Untuk biaya layanan kita tinggal
bayar berdasarkan pemakaian. Saat kita butuh tambahan layanan, kita bisa
meminta segera penambahan layanan tersebut, dan juga sebalik-nya (ELASTIS).
Berdasarkan jenis layanan-nya, Cloud Computing dibagi menjadi
berikut ini:
1.
Software as a Service (SaaS)
2.
Platform as a Service (PaaS)
3.
Infrastructure as a Service (IaaS)
Dibawah ini kita bahas,
masing-masing jenis layanan diatas:
- Software as a Service (SaaS) adalah layanan dari Cloud Computing dimana kita tinggal memakai software(perangkat lunak) yang
telah disediakan. Kita cukup tahu bahwa perangkat lunak bisa berjalan dan
bisa digunakan dengan baik. Contoh: layanan email publik (Gmail,
YahooMail, Hotmail, dsb), social
network(Facebook, Twitter, dsb) instant messaging (YahooMessenger, Skype, GTalk, dsb)
dan masih banyak lagi yang lain. Dalam perkembangan-nya, banyak
perangkat lunak yang dulu hanya kita bisa nikmati dengan menginstall
aplikasi tersebut di komputer kita (on-premise)
mulai bisa kita nikmati lewat Cloud
Computing. Keuntungan-nya, kita tidak perlu membeli lisensi
dan tinggal terkoneksi ke internet untuk memakai-nya. Contoh: Microsoft
Office yang sekarang kita bisa nikmati lewat Office 365, Adobe Suite yang
bisa kita nikmati lewat Adobe Creative Cloud, dsb.
- Platform as a Service (PaaS) adalah layanan dari Cloud Computing dimana kita menyewa “rumah” berikut
lingkungan-nya (sistem operasi, network, databbase engine, framework
aplikasi, dll), untuk menjalankan aplikasi yang kita buat. Kita tidak
perlu pusing untuk menyiapkan “rumah” dan memelihara “rumah” tersebut.
Yang penting aplikasi yang kita buat bisa berjalan dengan baik di “rumah”
tersebut. Untuk pemeliharaan “rumah” ini menjadi tanggung jawab dari
penyedia layanan. Sebagai analogi, misal-nya kita sewa kamar hotel, kita
tinggal tidur di kamar yang sudah kita sewa, tanpa peduli bagaimana
“perawatan” dari kamar dan lingkungan-nya. Yang penting, kita bisa nyaman
tinggal di kamar itu, jika suatu saat kita dibuat tidak nyaman, tinggal
cabut dan pindah ke hotel lain yang lebih bagus layanan-nya. Contoh
penyedia layanan PaaS ini adalah: Amazon Web Service, Windows Azure,
bahkan tradisional hosting-pun merupakan contoh dari PaaS.
Keuntungan dari PaaS adalah kita sebagai pengembang bisa fokus pada
aplikasi yang kita buat, tidak perlu memikirkan operasional dari “rumah”
untuk aplikasi yang kita buat.
- Infrastructure as a Service (IaaS) adalah layanan dari Cloud Computing dimana kita bisa “menyewa”
infrastruktur IT (komputasi, storage, memory, network dsb). Kita bisa
definisikan berapa besar-nya unit komputasi (CPU), penyimpanan data (storage) , memory (RAM), bandwith, dan konfigurasi lain-nya yang akan kita
sewa. Mudah-nya, IaaS ini
adalah menyewa komputer virtual yang masih kosong, dimana setelah komputer
ini disewa kita bisa menggunakan-nya terserah dari kebutuhan kita. Kita
bisa install sistem operasi dan aplikasi apapun diatas-nya. Contoh
penyedia layanan IaaS ini
adalah: Amazon
EC2, Windows Azure (soon), TelkomCloud, BizNetCloud, dsb. Keuntungan dari IaaS ini adalah kita tidak
perlu membeli komputer fisik, dan konfigurasi komputer virtual tersebut
bisa kita rubah (scale up/scale down) dengan mudah.
Sebagai contoh, saat komputer virtual tersebut sudah kelebihan beban, kita
bisa tambahkan CPU, RAM, Storage dsb dengan segera.
Komputasi Grid
Komputasi Grid adalah penggunaan
sumber daya yang melibatkan banyak komputer yang terdistribusi dan terpisah
secara geografis untuk memecahkan persoalan komputasi dalam skala besar.
Grid computing merupakan cabang dari distributed computing.Grid
komputer memiliki perbedaan yang lebih menonjol dan di terapakan pada sisi
infrastruktur dari penyelesaian suatu proses. Grid computing adalah suatu
bentuk cluster (gabungan) komputer-komputer yang cenderung tak terikat batasan
geografi. Di sisi lain, cluster selalu diimplementasikan dalam satu tempat
dengan menggabungkan banyak komputer lewat jaringan.
Ide awal komputasi grid dimulai dengan adanya distributed
computing, yaitu mempelajari penggunaan komputer terkoordinasi yang secara
fisik terpisah atau terdistribusi. Sistem terdistribusi membutuhkan aplikasi
yang berbeda dengan sistem terpusat. Kemudian berkembang lagi menjadi parallel
computing yang merupakan teknik komputasi secara bersamaan dengan memanfaatkan
beberapa komputer secara bersamaan.
Grid computing menawarkan solusi komputasi yang murah, yaitu
dengan memanfaatkan sumber daya yang tersebar dan heterogen serta pengaksesan
yang mudah dari mana saja. Globus Toolkit adalah sekumpulan perangkat lunak dan
pustaka pembuatan lingkungan komputasi grid yang bersifat open-source. Dengan
adanya lingkungan komputasi grid ini diharapkan mempermudah dan mengoptimalkan
eksekusi program-program yang menggunakan pustaka paralel. Dan Indonesia sudah
menggunakan sistem Grid dan diberi nama InGrid (Inherent Grid). Sistem
komputasi grid mulai beroperasi pada bulam Maret 2007 dan terus dikembangkan
sampai saat ini. InGrid ini menghubungkan beberapa perguruan tinggi negeri dan
swasta yang tersebar di seluruh Indonesia dan beberapa instansi pemerintahan
seperti Badan Meteorologi dan Geofisika.
KONSEP GRID COMPUTING
Beberapa konsep dasar dari grid computing :
1.
Sumber daya dikelola dan
dikendalikan secara lokal.
2.
Sumber daya berbeda dapat mempunyai
kebijakan dan mekanisme berbeda, mencakup Sumber daya komputasi dikelola oleh
sistem batch berbeda, Sistem storage berbeda pada node berbeda, Kebijakan
berbeda dipercayakan kepada user yang sama pada sumber daya berbeda pada Grid.
3.
Sifat alami dinamis: Sumber daya dan
pengguna dapat sering berubah
4.
Lingkungan kolaboratif bagi
e-community (komunitas elektronik, di internet)
5.
Tiga hal yang di-,sharing dalam
sebuah sistem grid, antara lain : Resource, Network dan Proses. Kegunaan /
layanan dari sistem grid sendiri adalah untuk melakukan high throughput
computing dibidang penelitian, ataupun proses komputasi lain yang memerlukan
banyak resource komputer.
Virtualisasi
APA ITU VIRTUALISASI
Virtualisasi bisa diartikan sebagai pembuatan suatu bentuk atau versi virtual dari sesuatu yang bersifat fisik, misalnya sistem operasi, perangkat storage/penyimpanan data atau sumber daya jaringan.
APA ITU VIRTUALISASI
Virtualisasi bisa diartikan sebagai pembuatan suatu bentuk atau versi virtual dari sesuatu yang bersifat fisik, misalnya sistem operasi, perangkat storage/penyimpanan data atau sumber daya jaringan.
Virtualisasi bisa diimplementasikan
kedalam berbagai bentuk, antara lain (Harry Sufehmi, Pengenalan Virtualisasi,
20090607) :
1.
Network Virtualization : VLAN,
Virtual IP (untclustering), Multilink
2.
Memory Virtualization : pooling
memory dari node-node di cluster
3.
Grid Computing : banyak komputer =
satu
4.
Application Virtualization : Dosemu,
Wine
5.
Storage Virtualization : RAID, LVM
6.
Platform Virtualization : virtual
computer
Pembahasan kali ini akan
menitikberatkan pada materi platform virtualization alias virtualisasi komputer
dan sistem operasi.
KEUNTUNGAN
PENGGUNAAN VIRTUALISASI
1.
Pengurangan Biaya Investasi
Hardware. Investasi hardware dapat ditekan lebih rendah karena virtualisasi
hanya mendayagunakan kapasitas yang sudah ada. Tak perlu ada penambahan
perangkat komputer, server dan pheriperal secara fisik. Kalaupun ada penambahan
kapasitas harddisk dan memori, itu lebih ditujukan untuk mendukung stabilitas
kerja komputer induk, yang jika dihitung secara finansial, masih jauh lebih
hemat dibandingkan investasi hardware baru.
2.
Kemudahan Backup & Recovery.
Server-server yang dijalankan didalam sebuah mesin virtual dapat disimpan dalam
1 buah image yang berisi seluruh konfigurasi sistem. Jika satu saat server
tersebut crash, kita tidak perlu melakukan instalasi dan konfigurasi ulang.
Cukup mengambil salinan image yang sudah disimpan, merestore data hasil backup
terakhir dan server berjalan seperti sedia kala. Hemat waktu, tenaga dan sumber
daya.
3.
Kemudahan Deployment. Server virtual
dapat dikloning sebanyak mungkin dan dapat dijalankan pada mesin lain dengan
mengubah sedikit konfigurasi. Mengurangi beban kerja para staff IT dan
mempercepat proses implementasi suatu sistem
4.
Mengurangi Panas. Berkurangnya
jumlah perangkat otomatis mengurangi panasnya ruang server/data center. Ini
akan berimbas pada pengurangan biaya pendinginan/AC dan pada akhirnya
mengurangi biaya penggunaan listrik
5.
Mengurangi Biaya Space. Semakin
sedikit jumlah server berarti semakin sedikit pula ruang untuk menyimpan
perangkat. Jika server ditempatkan pada suatu co-location server/data center,
ini akan berimbas pada pengurangan biaya sewa
6.
Kemudahan Maintenance &
Pengelolaan. Jumlah server yang lebih sedikit otomatis akan mengurangi waktu
dan biaya untuk mengelola. Jumlah server yang lebih sedikit juga berarti lebih
sedikit jumlah server yang harus ditangani
7.
Standarisasi Hardware. Virtualisasi
melakukan emulasi dan enkapsulasi hardware sehingga proses pengenalan dan
pemindahan suatu spesifikasi hardware tertentu tidak menjadi masalah. Sistem
tidak perlu melakukan deteksi ulang hardware sebagaimana instalasi pada
sistem/komputer fisik
8.
Kemudahan Replacement. Proses
penggantian dan upgrade spesifikasi server lebih mudah dilakukan. Jika server
induk sudah overload dan spesifikasinya tidak mencukupi lagi, kita bisa dengan
mudah melakukan upgrade spesifikasi atau memindahkan virtual machine ke server
lain yang lebih powerful
KERUGIAN
PENGGUNAAN VIRTUALISASI
1.
Satu Pusat Masalah. Virtualisasi bisa
dianalogikan dengan menempatkan semua telur didalam 1 keranjang. Ini artinya
jika server induk bermasalah, semua sistem virtual machine didalamnya tidak
bisa digunakan. Hal ini bisa diantisipasi dengan menyediakan fasilitas backup
secara otomatis dan periodik atau dengan menerapkan prinsip fail
over/clustering
2.
Spesifikasi Hardware. Virtualisasi
membutuhkan spesifikasi server yang lebih tinggi untuk menjalankan server induk
dan mesin virtual didalamnya
3.
Satu Pusat Serangan. Penempatan
semua server dalam satu komputer akan menjadikannya sebagai target serangan.
Jika hacker mampu menerobos masuk kedalam sistem induk, ada kemungkinan ia
mampu menyusup kedalam server- server virtual dengan cara menggunakan informasi
yang ada pada server induk
Distibuted Computation dalam Cloud Computing
Distibuted Computation dalam Cloud Computing
Komputasi Terdistribusi merupakan salah satu tujuan dari Cloud Computing,
karena menawarkan pengaksesan sumber daya secara parallel, para pengguna juga
bisa memanfaatkannya secara bersamaan (tidak harus menunggu dalam antrian untuk
mendapatkan pelayanan), terdiri dari banyak sistem sehingga jika salah satu
sistem crash, sistem lain tidak akan terpengaruh, dapat menghemat biaya
operasional karena tidak membutuhkan sumber daya (resourches).
Kegiatan ini merupakan kumpulan beberapa computer yang
terhubung untuk melakukan pendistribusian, seperti mengirim dan menerima data
serta melakukan interaksi lain antar computer yang dimana membutuhkan sebuah
jaringan agar computer satu dan lainnya bisa saling berhubung dan melakukan
interaksi. Hal ini semua dilakukan dengan cloud computing yang seperti kita
ketahui memberikan layanan dimana informasinya disimpan di server secara
permanen dan disimpan di computer client secara temporary.
Distribusi komputasi ini memiliki definisi mempelajari
penggunaan terkoordinasi dari computer secara fisik terpisah atau
terdistribusi. Pada distributed computing ini, program dipisah menjadi beberapa
bagian yang dijalankan secara bersamaan pada banyak computer yang terhubung
melalui jaringan internet.
Implementasi
Distribusi Komputasi Awan
Ada
tiga poin utama yang diperlukan dalam implementasi cloud computing, yaitu :
1.
Komputer Front End
Komputer
front end merupakan sebuah media tatap muka yang digunakan untuk melakukan
interaksi dengan data yang ada dalam sebuah sistem. Biasanya merupakan komputer
desktop biasa. Front-end lebih mengarah kepada sebuah layanan umum yang
memungkinkan semua orang dapat menerima atau memberikan informasi kepada banyak
proses yang dilakukan.
2.
Komputer Back End
Komputer
back end dalam skala besar biasanya berupa server komputer yang dilengkapi dengan
data center dalam penyimpanan besar. Pada umumnya komputer back end harus
mempunyai kinerja yang tinggi, karena harus melayani hingga ribuan permintaan
data.
3.
Penghubung antara keduanya
Penghubung
keduanya bisa berupa jaringan LAN atau internet.
Map Reduce
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.
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.
Desain dan Struktur, MapReduce itu sederhana.
Dari
definisinya, MapReduce mungkin terkesan sangat ribet. Untuk memproses sebuah
data raksasa, data itu harus dipotong-potong kemudian dibagi-bagikan ke tiap
komputer dalam suatu cluster. Lalu proses Map dan proses Reduce pun harus
dibagi-bagikan ke tiap komputer dan dijalankan secara paralel. Terus hasil
akhirnya juga disimpan secara terdistribusi. Benar-benar terkesan merepotkan.
Beruntunglah,
MapReduce telah didesain sangat sederhana alias simple. 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 (Gambar 1).
Gambar 1. Map dan Reduce
Program
yang memuat kalkulasi yang akan dilakukan dalam proses Map disebut Fungsi Map,
dan yang memuat kalkulasi yang akan dikerjakan oleh proses Reduce disebut
Fungsi Reduce. Jadi, seorang programmer yang akan menjalankan MapReduce harus
membuat program Fungsi Map dan Fungsi Reduce.
Fungsi
Map bertugas untuk membaca input dalam bentuk pasangan Key/Value, lalu
menghasilkan output berupa pasangan Key/Value juga. Pasangan Key/Value hasil
fungsi Map ini disebut pasangan Key/Value intermediate. Kemudian, fungsi Reduce
akan membaca pasangan Key/Value intermediate hasil fungsi Map, dan
menggabungkan atau mengelompokkannya berdasarkan Key tersebut. Lain katanya,
tiap Value yang memiliki Key yang sama akan digabungkan dalam satu kelompok.
Fungsi Reduce juga menghasilkan output berupa pasangan Key/Value.
Untuk
memperdalam pemahaman, mari kita simak satu contoh. Taruhlah kita akan membuat
program MapReduce untuk menghitung jumlah tiap kata dalam beberapa file teks
yang berukuran besar (Gambar 2).
Dalam program ini, fungsi Map dan fungsi Reduce dapat didefinisikan sebagai
berikut:
map(String key, String value):
//key : nama file teks.
//value: isi file teks tersebut.
for each word W in value:
emitIntermediate(W,"1");
reduce(String key, Iterator values):
//key : sebuah kata.
//values : daftar yang berisi hasil hitungan.
int result = 0;
for each v in values:
result+=ParseInt(v);
emit(AsString(result));
Hasil
akhir dari program ini adalah jumlah dari tiap kata yang terdapat dalam
file teks yang dimasukkan sebagai input program ini.
Gambar 2. Menghitung jumlah tiap kata dalam suatu
dokumen.
Menjalankan Contoh Program MapReduce
Untuk
lebih jelasnya lagi, kita bisa menjalankan langsung program ini di PC kita
sendiri. Tetapi, bukan dengan software MapReduce milik Google. Sampai saat ini
Google tidak pernah mendistribusikan software MapReduce miliknya. Namun
demikian, Apache telah merilis software open source yang dikenal dengan nama
Hadoop untuk mengebangkan dan menjalankan aplikasi MapReduce. Secara garis
besar Hadoop terdiri atas HDFS (Hadoop Distributed File System) dan Hadoop
MapReduce. HDFS adalah versi open source-nya GFS (Google File System), dan
Hadoop MapReduce adalah versi open source dari Google MapReduce.
Ada
tiga cara untuk menjalankan aplikasi MapReduce dengan menggunakan Hadoop,
yaitu:
1. Dengan menggunakan Hadoop mode Standalone pada 1 PC Windows.
2. Dengan menggunakan Hadoop mode Pseudo-Distributed pada 1 PC Linux.
3. Dengan menggunakan Hadoop mode Terdistribusi Penuh pada beberapa PC Linux.
NoSQL Database
Berbeda dengan SQL Database, dari namanya saja sudah bisa ditebak bahwa nosql database adalah kebalikan dari sql database. Tidak relational / tanpa relation. Database nosql atau yang biasa disebut NoSQL database / cloud database merupakan penyimpanan data / database yang tidak terstruktur.
Nosql
database tidak seperti sql database yang menggunakan tabel dalam penyusunan
datanya, nosql database menggabungkan semua database tidak membedakan jenis2nya
dan tanpa karakteristik umum. Tapi nosql database ini memiliki kecepatan yang
super cepat dibanding dengan sql database, pencariannya lebih terfokus. Nosql
sebetulnya tidak 100% menyimpan data dengan cara tidak terstruktur, terkadang
ada miripnya dengan sql database dengan sedikit susunan pada saat2 tertentu.
Bedanya
nosql database ini menyusun bagian didalam bagian lainnya (subset). Jadi setiap
bagian akan memiliki beberapa bagian lagi didalamnya. Nosql ini cocok dan biasa
digunakan untuk penyimpanan aplikasi atau data yang sangat besar. Karena dengan
menggunakan nosql data dapat diakses dengan sangat fleksibel dan sangat sedikit
kemungkinan error ketika mengakses banyak data dengan format yang berbeda-beda.
Pengelompokan database noSQL
Secara umum, database noSQL dibagi
menurut format penyimpanan dokmentnya . Berikut ini adalah pengelompokan
database noSQL berdasarkan model (penyimpanan) datanya
1. Document
Database contohnya MongoDB,
seiap satu object data disimpan dalam satu dokumen. Dokumen sendiri bisa
terdiri dari key-value, dan value sendiri bisa berupa array atau key-value
bertingkat.
2. Graph , Format penyimpanan data
dalam struktur graph. Format ini sering dipakai untuk data yang saling
berhubungan seperti jejaring social. Contoh database noSQL dengan format ini
adalah Neo4J dan FlockDB. FlockDB dipakai oleh twitter.
3. Key – Value, contoh database
jenis ini adalah Apache Cassandra.
4. Object Database. Format database
yang disimpan dalam object object, Object disini sama dengan pengertian object
di Pemrograman beroreintasi object , Contoh databasenya adalah Db4o.
5. Tipe lainnya adalah tabular, tuple
store dan berbagai jenis lain yang tidak terlalu populer.
Kelebihan NoSQL di banding Relasional Database
1. NoSQL bisa menampung data yang
terstruktur, semi terstruktur dan tidak terstuktur secara efesien dalam skala
besar (big data/cloud).
2. Menggunakan OOP dalam pengaksesan
atau manipulasi datanya.
3. NoSQL tidak mengenal schema tabel
yang kaku dengan format data yang kaku. NoSQL sangat cocok untuk data yang
tidak terstruktur, istilah singkat untuk fitur ini adalah Dynamic Schema.
4. Autosharding, istilah
sederhananya, jika database noSQL di jalankandi cluster server (multiple
server) maka data akan tersebar secara otomatis dan merata keseluruh server.
Kekurangan dari database NoSQL
sendiri , minimal bagi saya adalah Hostingnya mahal. beberapa layanan di luar
negeri mencharge biaya 100-200USD untuk hosting database noSQL. Selain itu,
saya belum pernah menemukan hosting Cpanel yang mendukung database MongoDB atau
database noSQL lainnya.
Selain itu, karena bervariasinya
produk dan format penyimpanan, berpindah antar satu produk database ke produk
noSQL lainnya perlu waktu untuk belajar. Contohnya ketika anda pindah dari
MongoDB ke Cassandra, maka anda harus belajar lagi dari awal, berbeda dengan
database RDMS.
http://www.cloudindonesia.or.id/apa-itu-cloud-computing.html
http://febbri-grunge.blogspot.co.id/2015/06/komputasi-grid-grid-computing.html
https://www.excellent.co.id/product-services/vmware/keuntungan-teknologi-virtualisasi-cloud-computing/
https://www.candra.web.id/pengantar-database-nosql-dan-mongodb/
http://www.teknologi-bigdata.com/2013/02/mapreduce-besar-dan-powerful-tapi-tidak.html
Post a Comment