A. Definisi Cloud
Computing
Komputasi
awan atau cloud computing adalah gabungan pemanfaatan teknologi
komputer dan
pengembangan berbasis Internet. Awan (cloud) adalah metafora dari internet,
sebagaimana awan yang sering digambarkan di diagram jaringan komputer.
Sebagaimana awan dalam diagram jaringan komputer tersebut, awan (cloud) dalam Cloud Computing juga merupakan abstraksi dari infrastruktur
kompleks yang disembunyikannya. Ia
adalah suatu metoda komputasi di mana kapabilitas terkait teknologi informasi disajikan sebagai suatu layanan, sehingga
pengguna dapat mengaksesnya lewat Internet tanpa mengetahui apa yang ada
didalamnya, ahli dengannya, atau memiliki kendali terhadap infrastruktur
teknologi yang membantunya.
Menurut sebuah makalah tahun 2008 yang
dipublikasi IEEE Internet
Computing:
"Cloud
Computing adalah suatu paradigma di mana informasi secara permanen tersimpan di
server di internet dan
tersimpan secara sementara di komputer pengguna (client) termasuk di dalamnya
adalah desktop, komputer tablet, notebook, komputer tembok, handheld,
sensor-sensor, monitor dan lain-lain."
Komputasi awan adalah suatu konsep
umum yang mencakup SaaS, Web 2.0,
dan tren teknologi terbaru lain yang dikenal luas, dengan tema umum berupa
ketergantungan terhadap Internet untuk memberikan kebutuhan komputasi pengguna.
Sebagai contoh, Google Apps menyediakan aplikasi bisnis umum
secara daring yang diakses melalui suatu penjelajah webdengan perangkat lunak dan data yang tersimpan di server. Komputasi awan saat ini merupakan
trend teknologi terbaru, dan contoh bentuk pengembangan dari teknologi Cloud
Computing ini adalah iCloud.
Manfaat
Cloud Computing adalah sebagai berikut:
·
Skalabilitas,
yaitu dengan cloud computing kita bisa menambah kapasitas penyimpanan data kita
tanpa harus membeli peralatan tambahan, misalnya hardisk dll. Kita cukup menambah kapasitas yang disediakan
oleh penyedia layanan cloud computing.
·
Aksesibilitas, yaitu kita bisa mengakses data kapanpun dan dimanapun kita
berada, asal kita terkoneksi dengan internet, sehingga memudahkan kita mengakses data disaat yang
penting.
·
Keamanan,
yaitu data kita bisa terjamin keamanan nya oleh penyedia layanan cloud
computing, sehingga bagi perusahaan yang berbasis IT, data bisa disimpan secara
aman di penyedia cloud computing. Itu juga mengurangi biaya yang diperlukan
untuk mengamankan data perusahaan.
·
Kreasi, yaitu para user bisa melakukan/mengembangkan kreasi atau
project mereka tanpa harus mengirimkan project mereka secara langsung ke
perusahaan, tapi user bisa mengirimkan nya lewat penyedia layanan cloud
computing.
·
Kecemasan,
ketika terjadi bencana alam data milik kita tersimpan aman di cloud meskipun
hardisk atau gadget kita
rusak.
B. Perbedaan Cloud
Computing dengan Grid Computing
Untuk memahami perbedaan dasar dan perbedaan secara komplek
antara cloud computing dan grid computing, anda harus benar-benar
perlu memahami kedua teknologi yang dipergunakan dalam kedua konsep tersebut.
Berikut ini adalah definisinya.
Cloud
pada dasarnya merupakan sebuah perluasan dengan konsep pemrograman berorientasi
objek secara abstraksi, di mana awan (cloud)
di sini yaitu Internet. Di mana untuk para pengguna akhir hanya akan
mendapatkan output serta input tertentu, sebuah proses lengkap yang
nantinya akan mengarah ke output dan
akan murni terlihat. Komputasi berbasis sumber daya virtual ini sebenarnya
ditempatkan pada beberapa server dan juga dalam beberapa cluster. Dalam cloud
computing biasanya ada beberapa istilah yang biasa dikenal sebagai model
SPI model SaaS, PaaS dan IaaS. Ini adalah sebuah layanan yang tersedia pada
konsep awan dan akan melakukan semua proses kerja yang berat. Dengan anda
menggunakan konsep cloud computing
ini maka akan menghilangkan serta menghemat biaya dan kompleksitas,
konfigurasi, dan juga dalam mengelola perangkat keras, perangkat lunak yang
dibutuhkan untuk membangun dan menyebarkan aplikasi, nantinya aplikasi ini akan
dibagikan melalui layanan yang tersedia melalui internet.
Sementara sistem grid dirancang untuk berbagi sumber daya
secara kolaboratif. Hal ini juga dapat dianggap sebagai komputasi cluster yang didistribusikan dengan
skala besar. Grid pada dasarnya adalah salah satu konsep computing yang menggunakan kemampuan pengolahan unit komputasi yang
berbeda untuk memproses serta menangani suatu tugas. Tugas ini nantinya akan
dibagikan menjadi beberapa sub-tugas, masing-masing mesin pada grid memiliki
tugas, ketika sub-tugas tersebut telah selesai melakukan tugasnya nantinya
mereka akan dikirim kembali ke mesin utama yang mengurus semua tugas lalu semua
tugas-tugas yang telah selesai nantinya akan digabungkan secara bersama-sama
untuk mengeluarkan output.
Kesimpulannya:
1. Komputer server masih akan diperlukan untuk
mendistribusikan berbagai data dan juga untuk mengumpulkan hasil dari klien
yang berpartisipasi didalam konsep komputasi grid.
2.
Konsep cloud computing akan
menawarkan layanan yang lebih baik dari pada komputasi grid. Bahkan hampir
semua layanan yang ada di internet saat ini dapat diperoleh dari konsep awan (cloud), misalnya seperti pada web hosting, sistem operasi ganda (multiple operating systems), dukungan
berbagai database dan masih banyak lagi yang lainnya.
3.
Konsep grid computing cenderung lebih
sulit digabungkan karena beberapa faktor heterogen, dan geografis dibandingkan
dengan sistem cluster komputasi
konvensional, karena harus menggabungkan beberapa macam perbedaan platform dari
sisi perangkat keras dan perangat lunak untuk menghasilkan sebuah output.
C. Implementasi
Distributed Computation dalam Cloud Computing
Cloud computing
maupun grid computing sama-sama memiliki konsep yang
telah dikembangkan untuk tujuan komputasi terdistribusi (distributed computing), yaitu sebuah komputasi dari elemen-elemen
dan juga cakupan area yang luas. Berikut ini adalah alasan orang-orang lebih
memilih komputasi secara terdistribusi (distributed
computing):
•
Alasan untuk memilih komputasi terdistribusi adalah untuk menawarkan sumber daya komputasi secara paralel atau secara
bersamaan dengan para pengguna, karena konsep permintaan dari para pengguna (client) tidak benar-benar harus menunggu
dalam antrian untuk mendapatkan pelayanan.
•
Konsep komputer terdistribusi akan memanfaatkan setiap waktu luang prosesor
sedang tidak dipergunakan (idle processor).
•
Sistem komputasi terdistribusi terdiri dari banyak sistem, sehingga jika salah
satu crash, yang lainnya tidak
terpengaruh.
•
Model dari konsep terdistribusi sangat baik, karena tidak membutuhkan sumber
daya (resources) yang banyak dan juga
besar sehingga akan menghemat biaya opersional.
Contoh
implementasi cloud computing dalam pemerintahan (E-Government)
Cloud Computing dalam pemerintahan (E-Goverment) dapat
mendongkrak kinerja khususnya dalam bidang pemerintahan. E-Goverment dapat
membantu para staff di bidang pemerintahan untuk memberikan pelayanan yang
lebih baik ke masyarakat. Pemerintah dalam negara Indonesia telah menggunakan cloud computing. Contoh pertama yaitu
sebagai penyediaan sumber informasi. Badan Pengkajian Dan Penerapan Teknologi
(BPPT) telah menyediakan layanan Cloud
Computing sebagai layanan jasa alih daya pengelolaan TIK untuk instansi
pemerintah. Layanan ini bertujuan untuk dapat mewujudkan percepatan e-government, karena memungkinkan
pengguna pemerintah berkonsentrasi dalam memberikan layanan dan tidak
dipusingkan dengan konfigurasi maupun pemeliharan perangkat teknologi
informasi.
D. Definisi Map
Reduce dan NoSQL beserta Implementasinya dalam Cloud Computing
Map Reduce dan NoSQL
(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.
Sementara 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.
E. Studi Kasus
Cloud Computing pada Layanan IaaS
Salah satu layanan Cloud Computing adalah Infrastructure as a Service (IaaS), adalah layanan komputasi
awan yang menyediakan infrastruktur IT berupa CPU, RAM, storage, bandwith dan
konfigurasi lain. Komponen-komponen tersebut digunakan untuk membangun komputer
virtual. Komputer virtual dapat diinstal sistem operasi dan aplikasi sesuai
kebutuhan. Keuntungan layanan IaaS ini adalah tidak perlu membeli komputer
fisik sehingga lebih menghemat biaya. Konfigurasi komputer virtual juga bisa
diubah sesuai kebutuhan. Misalkan saat storage hampir penuh, storage bisa
ditambah dengan segera. Perusahaan yang menyediakan IaaS adalah Amazon EC2,
TelkomCloud dan BizNetCloud.
Dengan EC2, pelanggan membuat
sendiri Amazon Machine Images (AMIs) yang berisi sistem
operasi, aplikasi, dan data, dan mereka mengontrol berapa banyak contoh
masing-masing yang berjalan dalam AMI pada waktu tertentu. Pelanggan membayar
jam yang mereka gunakan, menambahkan sumber daya komputasi pada waktu puncak
dan menghapusnys ketika mereka tidak lagi diperlukan. EC2 ini, Simple Storage Service (S3), dan lainnya
merupakan korban Amazon skala untuk memberikan layanan melalui internet dalam
kapasitas besar untuk jutaan pengguna.
Amazon menyediakan lima jenis server
yang berbeda mulai dari yang sederhana core server x86 delapan core untuk server
x86_64. Anda tidak perlu mengetahui server yang sedang digunakan untuk
memberikan contoh layanan. Anda dapat menempatkan contoh-contoh di lokasi
geografis yang berbeda atau zona ketersediaan. Amazon memungkinkan alamat IP elastic
yang dapat dialokasikan secara dinamis terhadap kasus.