Minggu, 01 Mei 2016

Komputasi Cloud


Dengan semakin berkembangnya teknologi, maka pengguna tidak perlu direpotkan dengan manajemen waktu dan sumber daya. Salah satunya adalah dengan adanya teknologi Cloud (Awan) ini bukan berarti ada kegiatan diawan…. apalagi komputer yang ada di langit. Dalam Cloud kita (pengguna) dapat menggunakan konsep - konsep seperti Social Networking, Share, Colaborations, Maintenance, Terdistribusi, Scalability, Concurency, dan transparan.Cloud Computing hadir dengan fitur yang memudahkan akses data dari mana saja dan kapan saja, karena dengan memanfaatkan internet dan menggunakan perangkat fixed serta mobile device yang menggunakan internet cloudsebagai tempat penyimpanan data, aplikasi dan lainya.

Komputasi Cloud
Cloud Computing atau bisa disebut juga Komputasi awan adalah suatu penggabungan antara teknologi komputer yang telah berkembang dengan basis internet yang juga telah berkembang. Mengapa disebut komputasi awan?? Karena komputasi dianggap sebagai komputer dan internet sebagai awan dimana bekerja tidak kelihatan oleh mata manusia. Jadi pada intinya manusia sebagai user memanfaatkan teknologi computer dengan menjalankan aplikasi yang tidak berada dicomputer yang digunakannya atau tidak ada file-file yang ada dikomputer kita langsung, namun file – file itu berada di computer lain yang dihubungkan dengan internet. Sebagai contoh : Pembuatan file atau dokumen pada Google Docs,

Komputasi Grid
Komputasi Grid (Grid Computing) itu sendiri adalah sebuah sistem komputasi terdistribusi, yang memungkinkan seluruh sumber daya (resource) dalam jaringan, seperti pemrosesan, bandwidth jaringan, dan kapasitas media penyimpan, membentuk sebuah sistem tunggal secara virtual. Seperti halnya pengguna internet yang mengakses berbagai situs web dan menggunakan berbagai protokol seakan-akan dalam sebuah sistem yang berdiri sendiri, maka pengguna aplikasi Grid computing seolah-olah akan menggunakan sebuah virtual komputer dengan kapasitas pemrosesan data yang sangat besar. 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.
Konsep dasar dari komputasi grid:
·         Sumber daya dikelola dan dikendalikan secara lokal
·         Sumber daya berbeda dapat mempunyai kebijakan dan mekanisme berbeda
Keuntungan penerapan komputasi grid:
·         Peningkatan dari sumber daya: Resource pool dari CPU dan storage.
·         Lebih cepat dan lebih besar: Komputasi simulasi dan penyelesaian masalah dapat berjalan lebih cepat dan mencakup domain yang lebih luas
·         Software dan aplikasi: Pool dari aplikasi dan pustaka standard, Akses terhadap model dan perangkat berbeda, Metodologi penelitian yang lebih baik.
·         Data: Akses terhadap sumber data global, dan hasil penelitian lebih baik.

Virtualisasi
Istilah Virtualisasi sering kita dengar dan selalu disandingkan dengan Cloud Computing akan tetapi Cloud Computing itu lebih dari sekedar virtualisasi. Virtualisasi adalah sebuah teknologi, yang memungkinkan anda yaitu user atau pemakai untuk membuat versi virtual dari sesuatu yang bersifat fisik, misalnya Sistem Operasi, Storage Data atau Sumber Daya Jaringan. Proses tersebut dilakukan oleh sebuah software atau firmware bernama Hypervisor. Hypervisor inilah yang menjadi nyawanya virtualisasi, karena dialah layer yang "berpura - pura" menjadi sebuah infrastruktur untuk menjalankan beberapa virtual machine. Dalam prakteknya, dengan membeli dan memiliki satu buah mesin, anda seolah - olah memiliki banyak server, sehingga anda bisa mengurangi pengeluaran IT untuk pembelian server baru, komponen, storage, dan software pendukung lainnya. 
Sebagai contoh: Misalkan terdapat satu buah komputer yang telah terinstall Sistem Operasi Linux Ubuntu. Kemudian dengan menggunakan perangkat lunak virtualization semisal Virtualbox kita dapat menginstall dua buah sistem operasi lain sebagai contoh Windows XP dan FreeBSD. Sistem operasi yang terinstall di komputer secara fisik dalam hal ini Linux ubuntu disebut sebagai host machine sedangkan sistem operasi yang diinstall diatasnya dinamakan guest machine. Istilah host dan guest dikenalkan untuk memudahkan dalam membedakan antara sistem operasi fisik yang terinstall di komputer dengan sistem operasi yang diinstall diatasnya atau virtualnya.
Perangkat lunak yang digunakan untuk menciptakan virtual machine pada host machine biasa disebut sebagai hypervisor atau Virtual Machine Monitor (VMM). Menurut Robert P. Goldberg pada tesisnya yang berjudul “Architectural Principles For Virtual Computer Systems” pada hal 23 menyebutkan bahwa tipe-tipe dari VMM ada 2 yaitu :
• Type 1 berjalan pada fisik komputer yang ada secara langsung. Pada jenis ini hypervisor / VMM benar-benar mengontrol perangkat keras dari komputer host-nya. Termasuk mengontrol sistem operasi-sistem operasi guest-nya. Contoh implementasi yang ada dan sudah saya coba secara langsung ialah VMWare ESXi. Adapun contoh yang lain yang ada seperti Microsoft Hyper-V.
• Type 2 berjalan pada sistem operasi diatasnya. Pada tipe ini tentunya guest sistem operasi nya berada di layer diatasnya lagi.

Virtualisasi dapat diimplementasikan ke dalam 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


Distributed Computation dalam Cloud Computing
Komputasi terdistribusi merupakan bidang ilmu komputer yang mempelajari sistem terdistribusi. Sebuah sistem terdistribusi terdiri dari beberapa komputer otonom yang berkomunikasi melalui jaringan komputer. Komputer yang saling berinteraksi untuk mencapai tujuan bersama. Suatu program komputer yang berjalan dalam sistem terdistribusi disebut program didistribusikan, dan didistribusikan pemrograman adalah proses menulis program tersebut.Distributed Computing juga mengacu pada penggunaan sistem terdistribusi untuk memecahkan masalah komputasi. Dalam Distributed Computing, masalah dibagi menjadi banyak tugas, dikerjakan secara bersamaan yang diselesaikan oleh satu komputer.


Map Reduce dan NoSQL (Not Only SQL)
            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. 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 file System 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. NoSQL adalah istilah untuk menyatakan berbagai hal yang didalamnya termasuk database sederhana yang berisikan key dan value seperti Memory cache, ataupun yang lebih canggih yaitunon-database relational seperti MongoDB, Cassandra, CouchDB, dan yang lainnya. Wikipedia menyatakan NoSQL adalah sistem management database yang berbeda dari sistem management database relasional yang klasik dalam beberapa hal. NoSQL mungkin tidak membutuhkan skema table dan umumnya menghindari operasi join dan berkembang secara horizontal. Akademisi menyebut database seperti ini sebagai structured storage, istilah yang didalamnya mencakup sistem management database relasional.

NoSQL Database

Database NoSQL, disebut juga Not Only SQL, adalah sebuah pendekatan untuk pengelolaan data dan desaindatabase yang berguna untuk sejumlah item data yang sangat besar dan terdistribusi. NoSQL, yang mencakup berbagai teknologi dan arsitektur, berusaha untuk memecahkan masalah skalabilitas dan kinerja data yang besar yang tidak dirancang pada database relasional. NoSQL ini sangat berguna ketika perusahaan perlu untuk mengakses dan menganalisis sejumlah besar data terstruktur atau data yang disimpan dari jarak jauh pada beberapa virtual server di awan. Berlawanan dengan kesalahpahaman yang disebabkan oleh namanya, NoSQL tidak melarang bahasa query terstruktur (SQL). Meskipun benar bahwa beberapa sistem NoSQL sepenuhnya non-relasional, yang lain hanya menghindari fungsi relasional dipilih seperti skema tabel tetap dan bergabung dengan operasi. Sebagai contoh, daripada menggunakan tabel, database NoSQL mungkin mengatur data menjadi objek, kunci / nilai berpasangan atau tupel.


Sumber:
https://id.wikipedia.org/wiki/Komputasi_awan
https://id.wikipedia.org/wiki/Komputasi_grid
http://kitatkj2.blogspot.co.id/2014/05/pengertian-virtualisasi.html
http://adriyani-ridwan.blogspot.co.id/2015/05/pengantar-komputasi-cloud_36.html