UG News!

Kamis, 12 Maret 2015

Cloud Computing , Grid Computing , Virtualisasi, dan No SQL

Cloud Computing

Definisi cloud computing (komputasi awan) merupakan gabungan pemanfaatan teknologi komputer (komputasi) dalam suatu jaringan dengan pengembangan berbasis internet (awan) yang mempunyai fungsi untuk menjalankan program atau aplikasi melalui komputer – komputer yang terkoneksi pada waktu yang sama, tetapi tak semua yang terkonekasi melalui internet menggunakan cloud computing.
Teknologi komputer berbasis sistem Cloud ini merupakan sebuah teknologi yang menjadikan internet sebagai pusat server untuk mengelola data dan juga aplikasi pengguna. Teknologi ini mengizinkan para pengguna untuk menjalankan program tanpa instalasi dan mengizinkan pengguna untuk mengakses data pribadi mereka melalui komputer dengan akses internet.

Manfaat Cloud Computing Serta Penerapan Dalam Kehidupan Sehari – hari
Setelah penjabaran definisi singkat diatas tentu penggunaan teknologi dengan sistem cloud cukup memudahkan pengguna selain dalam hal efisiensi data, juga penghematan biaya. Berikut manfaat manfaat yang dapat dipetik lewat teknologi berbasis sistem cloud.


  1. Skalabilitas, yaitu dengan cloud computing pengguna bisa menambah kapasitas penyimpanan data tanpa harus membeli peralatan tambahan, misalnya hardisk dll. Pengguna cukup menambah kapasitas yang disediakan oleh penyedia layanan cloud computing.
  2. Aksesbilitas, yaitu pengguna bisa mengakses data kapanpun dan dimanapun pengguna berada, asal terkoneksi dengan internet, sehingga memudahkan pengguna untuk mengakses data disaat yang penting. 
  3. Keamanan, yaitu data pengguna 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.
  4. Kreasi, yaitu para pengguna bisa melakukan/mengembangkan kreasi atau project mereka tanpa harus mengirimkan project mereka secara langsung ke perusahaan, tapi user bisa mengirimkannya lewat penyedia layanan cloud computing.
  5. Kecemasan, ketika terjadi bencana alam data milik pengguna tersimpan aman di cloud meskipun hardisk atau gadget pengguna rusak.

Bagaimana Cloud Computing bekerja


Sistem Cloud bekerja menggunakan internet sebagai server dalam mengolah data. Sistem ini memungkinkan pengguna untuk login ke internet yang tersambung ke program untuk menjalankan aplikasi yang dibutuhkan tanpa melakukan instalasi. Infrastruktur seperti media penyimpanan data dan juga instruksi/perintah dari pengguna disimpan secara virtual melalui jaringan internet kemudian perintah – perintah tersebut dilanjutkan ke server aplikasi. Setelah perintah diterima di server aplikasi kemudian data diproses dan pada proses final pengguna akan disajikan dengan halaman yang telah diperbaharui sesuai dengan instruksi yang diterima sebelumnya sehingga konsumen dapat merasakan manfaatnya.

Contohnya 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.

Beberapa contoh layanan cloud computing

  1. Software as a Service (SaaS) adalah layanan dari Cloud Computing dimana pengguna tinggal memakai software (perangkat lunak) yang telah disediakan. Pengguna 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 bisa dinikmati dengan meng-install aplikasi tersebut di komputer (on-premise) mulai bisa dinikmati melewati cloud computing. Keuntungan-nya, pengguna tidak perlu membeli lisensi dan tinggal terkoneksi ke internet untuk memakai-nya. Contoh: Microsoft Office yang sekarang bisa dinikmati lewat Office 365, Adobe Suite yang bisa dinikmati lewat Adobe Creative Cloud.
  2. Platform as a Service (PaaS) adalah layanan yang menyediakan computing platform. Biasanya sudah terdapat sistem operasi, database, web server dan framework aplikasi agar dapat menjalankan aplikasi yang telah dibuat. Perusahaan yang menyediakan layanan tersebutlah yang bertanggung jawab dalam pemeliharaan computing platform ini. Keuntungan layanan PaaS ini bagi pengembang adalah mereka bisa fokus pada aplikasi yang mereka buat tanpa memikirkan tentang pemeliharaan dari computing platform. Contoh penyedia layanan PaaS adalah Amazon Web Service dan Windows Azure.
  3. 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 di-install 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.

Grid Computing

Grid Computing 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 vitual. 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 sebenarnya merupakan sebuah aplikasi pengembangan dari  jaringan komputer (network). Hanya saja, tidak seperti jaringan komputer konvensional yang berfokus pada komunikasi antar pirati (device), aplikasi pada Grid computing dirancang untuk memanfaatkan sumber daya pada terminal dalam jaringannya. Grid computing biasanya diterapkan untuk menjalankan sebuah fungsi yang terlalu kompleks atau terlalu intensif untuk dikerjakan oleh satu sistem tunggal.

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 vitual. 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.

Cara kerja Grid Computing

  1. Sistem tersebut melakukan koordinasi terhadap sumberdaya komputasi yang tidak berada dibawah suatu kendali terpusat. Seandainya sumber daya yang digunakan berada dalam satu cakupan domain administratif, maka komputasi tersebut belum dapat dikatakan komputasi grid.
  2. Sistem tersebut menggunakan standard dan protokol yang bersifat terbuka (tidak terpaut pada suatu implementasi atau produk tertentu). Komputasi grid disusun dari kesepakatan-kesepakatan terhadap masalah yang fundamental, dibutuhkan untuk mewujudkan komputasi bersama dalam skala besar. Kesepakatan dan standar yang dibutuhkan adalah dalam bidang autentikasi, otorisasi, pencarian sumberdaya, dan akses terhadap sumber daya.
  3. Sistem tersebut berusaha untuk mencapai kualitas layanan yang canggih, (nontrivial quality of service) yang jauh diatas kualitas layanan komponen individu dari komputasi grid tersebut.

Karakteristik Grid Computing

  • Large Scale (berskala besar). Grid Computing harus mampu menangani sejumlah sumber daya mulai dari hanya beberapa untuk jutaan. Hal ini menimbulkan masalah yang sangat serius untuk menghindari penurunan kinerja potensial sebagai ukuran meningkan  jaringan. 
  • Distribusi geografis. Sumber daya grid computing memungkin lokasi di tempat yang jauh.
  • Heterogenitas. Grid computing menyediakan perangkat lunak dan perangkat keras sumber daya yang sangat bervariasi mulai dari data, file, komponen perangkat lunak atau program untuk sensor, instrumen ilmiah, perangkat layar, penyelenggara pribadi digital, komputer, super-komputer dan jaringan. 
  • Resource Sharing. Sumber daya milik berbagai organisasi dapat diakses oleh organisasi lainnya (pengguna).
  • Multiple administrations. Setiap organisasi dapat membentuk keamanan yang berbeda dan kebijakan administratif di mana sumber daya yang dimiliki dapat diakses dan digunakan.
  • Resource coordination. Sumberdaya dalam grid computing harus dikoordinasikan untuk memberikan kemampuan komputasi yang handal. 
  • Transparent access. Grid computing harus dilihat sebagai komputer virtual yang tunggal.
  • Dependable access. Grid computing harus menjamin pemberian pelayanan di bawah persyaratan Quality of Service (QoS). Kebutuhan layanan yang handal adalah kebutuhan mendasar sejak pengguna membutuhkan jaminan bahwa mereka akan menerima prediksi , berkelanjutan dan menunjang performa dengan tinggi kinerja.
  • Dependable access. Grid computing harus menjamin pemberian pelayanan di bawah persyaratan Quality of Service (QoS). Kebutuhan layanan yang handal adalah kebutuhan mendasar sejak pengguna membutuhkan jaminan bahwa mereka akan menerima prediksi , berkelanjutan dan menunjang performa dengan tinggi kinerja.
  • Pervasive access. Grid harus memberikan akses ke sumber daya yang tersedia dengan beradaptasi dengan lingkungan yang dinamis di mana kegagalan sumber daya adalah hal yang lumrah. Sistem menentukan bagaimana cara memenuhi kebutuhan konsumen seiring dengan mengoptimasi jalannya sistem secara keseluruhan.

Jenis Grid Computing

  1. Gram (Grid Resources Allocation & Management)
  2. RFT/GridFTP (Reliable File Transfer/Grid File Transfer Protocol)
  3. MDS (Monitoring and Discovery Service)
  4. GSI (Grid Security Infrastructure)

Kelebihan dan Kekurangan 

Kelebihan :

Grid computing menjanjikan peningkatan utilitas, dan fleksibilitas yang lebih besar untuk sumberdaya infrastruktur, aplikasi dan informasi. Dan juga menjanjikan peningkatan produktivitas kerja perusahaan.
Grid computing bisa memberi penghematan uang, baik dari sisi investasi modal maupun operating cost–nya.

Kekurangan :

Manajemen institusi yang terlalu birokratis menyebabkan mereka enggan untuk merelakan fasilitas yang dimiliki untuk digunakan secara bersama agar mendapatkan manfaat yan lebih besar bagi masyarakat luas.
Masih sedikitnya Sumber Daya Manusia yang kompeten dalam mengelola grid computing. Contonhya kurangnya pengetahuan yang mencukupi bagi teknisi IT maupun user non teknisi mengenai manfaat dari grid computing itu sendiri.

Virtualisasi

Dalam ilmu komputer, virtualisasi (bahasa Inggris: virtualization) 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 komputer—dari keseluruhan sistem komputer sampai sebuah kemampuan atau komponen individu. Secara umum semua teknologi virtualisasi mengacu kepada "menyembunyikan detail teknis" melalui enkapsulasi.

Jenis Virtualisasi

Virtualisasi Perangkat Keras :
  1. Para-virtualisasi: Perangkat keras tidak disimulasikan tetapi perangkat-lunak tamu berjalan dalam domainnya sendiri seolah-olah dalam sistem yang berbeda. Dalam hal ini perangkat-lunak tamu perlu disesuaikan untuk dapat berjalan.
  2. Virtualisasi sebagian: Tidak semua aspek lingkungan disimulasikan tidak semua perangkat-lunak dapat langsung berjalan, beberapa perlu disesuaikan untuk dapat berjalan dalam lingkungan virtual ini.
  3. Virtualisasi penuh: Hampir menyerupai mesin asli dan mampu menjalankan perangkat lunak tanpa perlu diubah.
Virtualisasi Perangkat Lunak :
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 adalah KVM dan OpenVZ. Adapun contoh yang lain seperti VMWare ESXi, Microsoft Hyper-V.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 adalah KVM dan OpenVZ. Adapun contoh yang lain seperti VMWare ESXi, Microsoft Hyper-V.

Type 2 berjalan pada sistem operasi diatasnya. Pada tipe ini sistem operasi guest berada diatas sistem operasi host. Contoh tipe ini adalah VirtualBox.













NO SQL

NoSQL bukan lah berarti “No SQL” akan tetapi arti dari NoSQL adalah “Not Only SQL”. Berikut merupakan beberapa pengertian mengenai NoSQL : 

NoSQL merupakan suatu database sederhana yang berisikan key dan value seperti Memoache, ataupun yang lebih canggih yaitu non-database relasional seperti MongoDB, Cassandra, CouchDB, dan yang lainnya.
NoSQL merupakan database yang berbeda dengan sistem manajemen database relasional yang klasik dalam beberapa hal. NoSQL mungkin tidak membutuhkan skema tabel dan umumnya menghindari join dan berkembang secara horizontal.
NoSQL merupakan konsep penyimpanan data secara non-relasional.

Pengelompokan database NoSQL

Secara umum, database noSQL dibagi menurut format penyimpanan dokmentnya . Berikut ini adalah pengelompokan database noSQL berdasarkan model (penyimpanan) datanya

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.
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.
Key – Value,  contoh database jenis ini adalah Apache Cassandra.
Object Database. Format database yang disimpan dalam object object, Object disini sama dengan pengertian object di Pemrograman beroreintasi object , Contoh databasenya adalah Db4o.
Tipe lainnya adalah tabular, tuple store dan berbagai jenis lain yang tidak terlalu populer.

Kelebihan dan Kekurangan No SQL

Kelebihan NoSQL :

  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  NoSQL 
  1. 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.
  2. 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.


referensi :
http://pusatteknologi.com/pengertian-manfaat-cara-kerja-dan-contoh-cloud-computing.html
http://id.wikipedia.org/wiki/Komputasi_awan
http://id.wikipedia.org/wiki/Komputasi_grid
http://nasyasora.blogspot.com/
http://id.wikipedia.org/wiki/Virtualisasi
http://www.candra.web.id/2014/02/27/pengantar-database-nosql-dan-mongodb/