Pendahuluan
Cloud Computing (Komputasi Awan) adalah suatu konsep umum
yang mencakup SaaS, Web 2.0, dengan menggabungkan pemanfaatan teknologi
komputer dan disajikan dalam bentuk suatu layanan. Yang dimaksud dengan Saas
dan Web 2.0 adalah sebuah software as a service atau perangkat lunak yang
berbentuk layanan, digunakan untuk mengembangkan suatu aplikasi yang berbasis
web (Internet). Misalnya Facebook, didalam social networking ini memiliki
berbagai aplikasi seperti game, acara undangan, tautan dan sebagainya. Dengan
SaaS dan Web 2.0, pencipta Facebook menggunakannya untuk aplikasi tersebut
dengan syarat harus melalui internet atau system online.
Pada cloud computing, penyimpanan data hanya dilakukan pada
server utama, sehingga pengguna hanya dapat mengaksesnya tanpa harus mengetahui
infrastruktur pembuatan aplikasinya. Hanya perlu interface software saja untuk
mengakses server. Interface ini pada umumnya merupakan web browser yang
tersedia dengan banyak pilihan dan tidak berbayar.
Tanpa kita sadari sebenarnya kita sudah sering menggunakan
aplikasi dengan sistem berbasis cloud computing. Contoh lainnya seperti
Hotmail, Yahoo!Mail atau Gmail. Untuk melihat email, kita bisa melakukannya di
mana saja, yang penting ada internet dan browser. Software dan data kita tidak
tersimpan di komputer yang kita pakai melainkan terletak di cloud server.
Pengantar Komputasi GRID
Menurut definisi Grid Computing atau Komputasi Grid
merupakan salah satu dari tipe Komputasi Paralel, adalah penggunaan sumber daya
yang melibatkan banyak komputer terpisah secara geografis namun tersambung via
jalur komunikasi (termasuk Internet) untuk memecahkan persoalan komputasi skala
besar. Semakin cepat jalur komunikasi terbuka, maka peluang untuk menggabungkan
kinerja komputasi dari sumber-sumber komputasi yang terpisah menjadi semakin
meningkat. Dengan demikian, skala komputasi terdistribusi dapat ditingkatkan secara
geografis lebih jauh lagi, melintasi batas-batas domain administrasi yang ada.
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.
Beberapa konsep dasar dari Komputasi Grid, yaitu :
- Sumber daya dikelola dan dikendalikan secara lokal.
- 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.
- Sifat alami dinamis: Sumber daya dan pengguna dapat sering berubah
- Lingkungan kolaboratif bagi e-community (komunitas elektronik, di internet)
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 :
- Network Virtualization : VLAN, Virtual IP (untclustering), Multilink
- Memory Virtualization : pooling memory dari node-node di cluster
- Grid Computing : banyak komputer = satu
- Application Virtualization : Dosemu, Wine
- Storage Virtualization : RAID, LVM
- Platform Virtualization : virtual computer
Keuntungan Penggunaan Virtualisasi :
- Pengurangan Biaya Investasi Hardware.
- Kemudahan Backup & Recovery.
- Kemudahan Deployment. Server virtual dapat dikloning sebanyak mungkin dan dapat dijalankan pada mesin lain dengan mengubah sedikit konfigurasi.
- Mengurangi Panas ruang server/data center.
- Mengurangi Biaya Space.
- Kemudahan Maintenance & Pengelolaan.
- Standarisasi Hardware.
- Kemudahan Replacement.
Kerugian Penggunaan Virtualisasi :
- Satu Pusat Masalah, jika server induk bermasalah, semua sistem virtual machine didalamnya tidak bisa digunakan.
- Virtualisasi membutuhkan spesifikasi server yang lebih tinggi untuk menjalankan server induk dan mesin virtual didalamnya.
- Satu Pusat Serangan. Penempatan semua server dalam satu komputer akan menjadikannya sebagai target serangan.
Distributed Computation Dalam Cloud Computing
Seperti yang telah di jelaskan sebelumnya, cloud computing adalah teknologi yang memberikan berbagai
jenis sumber daya sebagai layanan, terutama melalui internet. Sedangkan komputasi
terdistribusi adalah konsep menggunakan sistem terdistribusi terdiri dari
banyak node diatur sendiri untuk memecahkan masalah yang sangat besar (yang
biasanya sulit untuk diselesaikan dengan satu komputer). Cloud computing pada
dasarnya adalah penjualan dan model distribusi untuk berbagai jenis sumber daya
melalui internet, sedangkan komputasi terdistribusi dapat diidentifikasi
sebagai jenis komputasi, yang menggunakan sekelompok mesin untuk bekerja
sebagai satu kesatuan untuk memecahkan masalah skala besar. Komputasi
terdistribusi mencapai hal ini dengan memecah masalah ke tugas sederhana, dan
menugaskan tugas-tugas ke node individu.
Map Reduce dan NoSQL (Not Only SQL)
Map reduce adalah sebuah framework pemrograman untuk
memproses data yang berukuran besar, biasanya digunakan untuk komputasi
terdistribusi pada kumpulan komputer.
NoSQL adalah tipe database yang sangat jauh berbeda
dengan konsep RDBMS(Relational Database Management System) ataupun ODBMS(Objecy
Oriented Database Management System). Perbedaan utamanya karena tidak mengenal
istilah relation dan tidak menggunakan konsep schema. Kalau biasanya
dapatmenggunakan query 'Join’ di sini tidak bisa menggunakannya karena setiap tabel
berdiri sendiri tanpa tergantung dengan tabel lainnya alias independen.
Selain itu
di dalam konsep DBMS biasanya sebelum insert data diharuskan untuk
mendefinisikan terlebih dahulu struktur tabel seperti tipe data dan ukurannya,
di konsep NoSQL ini bisa menyimpan data tanpa perlu mendefinisikan tipe data
dan ukurannya lagi. Jadi lebih fleksibel bila ada perubahan di masa
mendatang. Adapun beberapa database
NoSQL yang ada saat ini yaitu Cassandra, Big Table, CouchDB, Redis, Riak,
Dynamo dan lainnya.
NoSQL Database
NoSQL adalah yang cepat, portabel, sistem manajemen database
relasional tanpa batas sewenang-wenang, (selain memori dan kecepatan prosesor)
yang berjalan di bawah, dan berinteraksi dengan, NoSQL ini kompatibel dengan
"Relational Model".
NoSQL merupakan turunan dari sistem database RDB. Yang
terakhir dikembangkan di RAND Organisasi oleh Walter W. Hobbs. Beberapa Perl
script termasuk dengan NoSQL masih sangat dekat dengan RDB yang asli, sehingga
pangsa kredit yang baik bagi mereka pergi ke penulis asli. Seperti namanya,
NoSQL bukan merupakan database SQL melainkan tingkat alat shell, seperti yang
dijelaskan dalam Filsafat NoSQL. Bentuk setiap file data adalah suatu relasi,
atau tabel, dengan baris dan kolom informasi.
NoSQL cenderung menjadi bias mendukung Linux . Ini berarti
bahwa, di mana pun itu penting, NoSQL yang menggunakan versi GNU dari berbagai
perintah UNIX, seperti yang adalah orang-orang biasanya ditemukan di Linux.
NoSQL adalah Free Software , dirilis di bawah GNU General Public License .
Karena itu, sepenuhnya memenuhi syarat juga sebagai Open Source Software. NoSQL
telah ada selama lebih dari satu dekade sekarang dan tidak ada hubungannya
dengan bayi yang baru lahir Gerakan NoSQL , yang telah menerima hype
akhir-akhir ini. Sementara mantan adalah paket perangkat lunak
didefinisikan-baik, adalah sebuah database relasional untuk semua efek dan
hanya tidak sengaja tidak menggunakan SQL sebagai bahasa query, pendatang baru
ini kebanyakan konsep (dan tidak berarti novel yang baik), yang berangkat dari
model relasional sama sekali dan karena itu seharusnya lebih tepat disebut
"NoREL", atau sesuatu seperti itu.
Beban kerja database modern biasanya termasuk scaling untuk
data set (misalnya 3 TB Digg untuk lencana hijau, 50 TB Facebook untuk
pencarian kotak masuk atau's 2 eBay PB data keseluruhan), per-server kinerja,
dan skema kaku. Sistem NoSQL sering memberikan jaminan konsistensi lemah
seperti konsistensi akhirnya dan transaksi terbatas pada item data tunggal,
walaupun seseorang dapat memaksakan penuh ASAM jaminan dengan menambahkan
lapisan middleware tambahan. Tidak menyediakan kemampuan relasional membuatnya
lebih mudah untuk penyimpanan data skala tidak harus membayar biaya yang
berkaitan dengan jaminan relasional yang mungkin tidak diperlukan oleh proyek
yang menggunakan database.
Beberapa sistem NoSQL mempekerjakan arsitektur terdistribusi
, dengan data yang dimiliki secara berlebihan di beberapa server, sering
menggunakan tabel hash didistribusikan . Dengan cara ini, sistem dapat
ditingkatkan dengan mudah dengan menambahkan lebih banyak server, dan kegagalan
server dapat ditolerir. Mempromosikan antarmuka yang sangat sederhana seperti
array asosiatif atau-nilai pasangan kunci. Sistem lain, seperti native XML
database , mempromosikan dukungan dari XQuery standar.
Referensi
http://seto.citravision.com/berita-37-pengantar-komputasi-cloud--virtualisasi.html
http://dwinuzulul.blogspot.com/2010/04/nosql-vs-rdbms.html
http://dwinuzulul.blogspot.com/2010/04/nosql-vs-rdbms.html
Tidak ada komentar:
Posting Komentar