Cloud Computing adalah paradigma Teknologi Informasi yang memungkinkan akses ke berbagai sumber daya sistem yang dapat dikonfigurasi, dan layanan tingkat tinggi yang dapat dengan cepat disediakan dengan manajemen yang sederhana saja, yang sering kali hanya menggunakan internet.
Contoh Cloud Computing
Lewat penggunaan email seperti Yahoo ataupun Gmail. Data di beberapa server diintegrasikan secara global tanpa harus mendownload software untuk menggunakannya. Pengguna hanya memerlukan koneksi internet dan semua data dikelola langsung oleh Yahoo dan juga Google. Software dan juga memori atas data pengguna tidak berada di komputer tetapi terintegrasi secara langsung melalui sistem Cloud menggunakan komputer yang terhubung ke internet.
Grid Computing adalah sekumpulan komputer dari berbagai lokasi untuk mencapai sebuah tujuan (mirip dengan jaringan). Grid bisa juga disebut sebagai sistem terdistribusi, dengan beban kerja yang non-interaktif yang melibatkan file yang banyak sekali. Grid Computing berbeda dengan high-performance computing system konvensional, seperti Cluster Computing, yang dimana didalam grid komputer terdapat node masing-masing untuk mengerjakan suatu tugas.
Contoh grid computing
- Medical Images: Penggunaan data grid dan komputasi grid untuk menyimpan medical-image. Contohnya adalah eDiaMoND project.
- Computer-Aided Drug Discovery (CADD): Komputasi grid digunakan untuk membantu penemuan obat. Salah satu contohnya adalah: Molecular Modeling Laboratory (MML) di University of North Carolina (UNC).
- Big Science: Data grid dan komputasi grid digunakan untuk membantu proyek laboratorium yang disponsori oleh pemerintah. Contohnya terdapat di DEISA
- e-Learning: Komputasi grid membantu membangun infrastruktur untuk memenuhi kebutuhan dalam pertukaran informasi dibidang pendidikan. Contohnya adalah AccessGrid
Virtualisasi
Virtualisasi adalah istilah umum yang mengacu kepada abstraksi dari sumber daya komputer. Definisi lainnya adalah "sebuah teknik untuk menyembunyikan karakteristik fisik dari sumber daya komputer dari bagaimana cara sistem lain, aplikasi atau pengguna berinteraksi dengan sumber daya tersebut. Hal ini termasuk membuat sebuah sumber daya tunggal (seperti server, sebuah sistem operasi, sebuah aplikasi, atau peralatan penyimpanan terlihat berfungsi sebagai beberapa sumber daya logikal; atau dapat juga termasuk definisi untuk membuat beberapa sumber daya fisik (seperti beberapa peralatan penyimpanan atau server) terlihat sebagai satu sumber daya logikal."
Istilah virtualisasi sudah digunakan secara luas sejak 1960-an, dan telah diaplikasikan kepada beberapa aspek computer dari keseluruhan sistem komputer sampai sebuah kemampuan atau komponen individu. Secara umum semua teknologi virtualisasi mengacu kepada "menyembunyikan detail teknis" melalui enkapsulasi.
Contoh virtualisasi
Microsoft Hyper-V atau yang sebelumnya bernama Windows Server Virtualization merupakan virtualisasi yang bersifat hypervisor-based untuk sistem x64. Versi beta dari Hyper-V dipasarkan dengan edisi Windows Server 2008, dan versi finalnya dirilis tanggal 26 Juni 2008. Microsoft menyatakan bahwa produk ini merupakan suatu usaha dari Microsoft untuk menyediakan sebuah sistem operasi terbaik yang mendukung teknologi virtualisasi.
Distributed Computation dalam Cloud Computing
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.
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).
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.
Contoh distributed computation dalam cloud computing
E mail service, facebook, google
MapReduce dan NoSql
MapReduce
Setiap istilah perlu definisi, dan harus ada kesepakatan akan definisi tersebut biar tidak terjadi salah pengertian ataupun salah paham diantara para pengguna istilah tersebut. MapReduce pun punya definisi. 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.
Contoh mapreduce
Contoh kasus map reduce adalah misalnya jika kita ingin menghitung jumlah penggunaan huruf dalam sebuah buku. Misal kita punya satu file teks besar yang berisi seluruh kalimat yang menyusun sebuah buku. Maka yang dilakukan oleh Map Reduce program yang menghitung penggunaan kata dalam buku tersebut kurang lebih sebagai berikut:
Proses Map:
- Membaca tiap baris kalimat di dalam file teks tersebut.
- Membaca tiap kata yang ada dalam beris tersebut dan membuat sebuah map untuk kata tersebut. Key dari map itu adalah kata tersebut sedangkan value dari map itu adalah 1.
- Sampai disini hasil yang kita dapatkan dari dua langkah diatas adalah daftar map untuk semua kata dari file teks tersebut dengan value 1. Karena kita tidak menyatukan perhitungan kata-kata yang sama dalam satu map, maka tersapat map dengan key yang sama. Misal ada map kata ‘Dan’ => 1 berulang kali.
Proses Reduce:
- Melakukan sorting atau pengelompokan map dengan kata-kata yang sama.
- Menjumlahkan untuk mencari total dari kata-kata yang sama tersebut.
- Sampai disini maka hasilnya adalah map dengan key yang unik setiap kata berikut dengan jumlah penggunaannya di buku tersebut.
NoSql
NoSQL adalah istilah yang dikenal dalam teknologi komputasi untuk merujuk kepada kelas yang luas dari sistem manajemen basis data yang di identifikasikan dengan tidak mematuhi aturan pada model sistem manajemen basis data relasional yang banyak digunakan.
NoSQL tidak dibangun terutama dengan table dan umumnya tidak menggunakan SQL untuk memanipulasi data, sehingga sering ditafsirkan sebagai “tidak hanya SQL”.
Contoh NoSql
Neo4J dan FlockDB
No Sql Database
Database NoSQL adalah database yang tidak menggunakan realasi antar tabel dan tidak menyimpan data dalam format tabel kaku (kolom yang fix) seperti layaknya Relasional Database. Document Database contohnya MongoDB, seiap satu object data disimpan dalam satu dokumen.
Contoh No Sql Database
Neo4J dan FlockDB