Minggu, 03 Mei 2015

Cloud Computing


Pengertian / Definisi Cloud Computing.
Cloud computing mungkin masih samar terdengar bagi orang awam. Tetapi keberadaan cloud computing di era digital kini sebenarnya telah terasa di tengah masyarakat dalam kehidupan sehari hari seperti penggunaan email dan juga media sosial.

Secara umum, 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.    Semua Data Tersimpan di Server Secara Terpusat
Salah satu keunggulan teknologi cloud adalah memungkinkan pengguna untuk menyimpan data secara terpusat di satu server berdasarkan layanan yang disediakan oleh penyedia layanan Cloud Computing itu sendiri. Selain itu, pengguna juga tak perlu repot repot lagi menyediakan infrastruktur seperti data center, media penyimpanan/storage dll karena semua telah tersedia secara virtual.


2.    Keamanan Data
Keamanan data pengguna dapat disimpan dengan aman lewat server yang disediakan oleh penyedia layanan Cloud Computing seperti jaminan platform teknologi, jaminan ISO, data pribadi, dll.
3.    Fleksibilitas dan Skalabilitas yang Tinggi
Teknologi Cloud menawarkan fleksibilitas dengan kemudahan data akses, kapan dan dimanapun kita berada dengan catatan bahwa pengguna (user) terkoneksi dengan internet. Selain itu, pengguna dapat dengan mudah meningkatkan atau mengurangi kapasitas penyimpanan data tanpa perlu membeli peralatan tambahan seperti hardisk. Bahkan salah satu praktisi IT kenamaan dunia, mendiang Steve Jobs mengatakan bahwa membeli memori fisik untuk menyimpan data seperti hardisk merupakan hal yang percuma jika kita dapat menyimpan nya secara virtual/melalui internet.
4.    Investasi Jangka Panjang
Penghematan biaya akan pembelian inventaris seperti infrastruktur, hardisk, dll akan berkurang dikarenakan pengguna akan dikenakan biaya kompensasi rutin per bulan sesuai dengan paket layanan yang telah disepakati dengan penyedia layanan Cloud Computing. Biaya royalti atas lisensi software juga bisa dikurangi karena semua telah dijalankan lewat komputasi berbasis Cloud.
Penerapan Cloud Computing telah dilakukan oleh beberapa perusahaan IT ternama dunia seperti Google lewat aplikasi Google Drive, IBM lewat Blue Cord Initiative, Microsoft melalui sistem operasi nya yang berbasis Cloud Computing, Windows Azure dsb. Di kancah nasional sendiri penerapan teknologi Cloud juga dapat dilihat melalui penggunaan Point of Sale/program kasir.
Salah satu perusahaan yang mengembangkan produknya berbasis dengan sistem Cloud adalah DealPOS. Metode kerja Point of Sale (POS) ini adalah dengan mendistribusikan data penjualan toko retail yang telah diinput oleh kasir ke pemilik toko retail melalui internet dimanapun pemilik toko berada.  Selain itu, perusahaan telekomunikasi ternama nasional, Telkom juga turut mengembangkan sistem komputasi berbasis Cloud ini melalui Telkom Cloud dengan program Telkom VPS dan Telkom Collaboration yang diarahkan untuk pelanggan UKM (Usaha Kecil-Menengah).
Cara Kerja Sistem Cloud Computing
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.
Berikut adalah penjelasan singkat tentang Cloud Computing, sistem yang telah mendunia yang dapat membantu perusahaan atau organisasi dalam efisiensi penyimpanan data. Beberapa faktor seperti ketersediaan internet yang dibutuhkan sebagai jalur utama dalam distribusi data, kualitas vendor akan layanan sistem Cloud maupun masalah keamanan dan privasi seperti serangan peretas/hacker dalam meretas internet patut menjadi pertimbangan tersendiri sebelum anda beralih ke sistem Cloud. Selain vendor yang harus meningkatkan kualitas pelayanan mereka, pengguna juga diharapkan dapat lebih bijak dalam memilih kualitas vendor yang akan mereka gunakan untuk mengelola data berbasis Cloud Computing.
Grid computing
Grid computing sebenarnya merupakan sebuah aplikasi pengembangan dari jaringan komputer (network). Hanya saja, tidak seperti jaringan komputer konvensional yang berfokus pada komunikasi antar pirati, 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.

Definisi Grid Computing menurut beberapa sumber, yaitu:
  • Komputasi Grid adalah penggunaan sumber daya yang melibatkan banyak komputer yang terdistribusi dan terpisah secara geografis untuk memecahkan persoalan komputasi dalam skala besar (http://id.wikipedia.org)
  • Komputasi grid adalah infrastruktur perangkat keras dan perangkat lunak yang dapat menyediakan akses yang bisa diandalkan, konsisten, tahan lama dan tidak mahal terhadap kemampuan komputasi mutakhir yang tersedia. (The Grid 2: Blue Print for a New Computing Infrastructure yang ditulis oleh Ian Foster dan Carl Kesselman) 
  • Grid computing merupakan 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. (http://ismetsaja.wordpress.com) 


Struktur Grid Computing

Grid computing merupakan sistem komputer dengan sumber daya yang dikelola dan dikendalikan secara lokal. Dimana sumber daya ini berbeda dalam hal kebijakan dan mekanisme yaitu mencakup sumber daya komputasi yang dikelola oleh sistem batch berbeda, sistem storage berbeda pada node berbeda. Kebijakan berbeda dipercayakan kepada user yang sama pada sumber daya berbeda pada Grid. Grid computing memiliki sifat alami dinamis artinya Sumber daya dan pengguna dapat sering berubah.


Grid computing dibangun dengan cara menggabungkan seluruh sistem komputasi grid yang ada di institusi-institusi penelitian menjadi sebuah kesatuan. Pengaturan hardwaredan software pada masing-masing sistem di tingkat institusi kemungkinan berbeda, namun dengan menjalankan teknologi Grid computing dengan menggabungkan simpul-simpul penghubung dari masing-masing sistem, maka akan terbentuk sebah kesatuan sumber daya komputasi grid. Dengan ini berarti pengguna pada suatu institusi dapat memanfaatkan sumber daya komputasi yang berada di luar institusinya. Salah satu syarat dari pembentukan grid computing adalah adanya suatu backbone jaringan berkapasitas besar untuk menghubungkan simpul-simpul penghubung (memiliki lebar pita mulai dari 2 Mbps sampai dengan 155 Mbps).

Karakteristik Sistem

Ian Foster dalam jurnalnya tentang "What is grid?" menjelaskan ada 3 karakteristik atau ciri utama dari suatu sistem grid, yaitu : 
  1. Tidak ada kontrol terhadap resource yang controlized 
  2. Memiliki kesamaan standar protokol, misal TCP/IP 
  3. Memberikan layanan yang canggih (non trivial QoS) 

Tiga hal yang di-sharing dalam sebuah sistem grid, antara lain : Resource, Network dan Proses. Kegunaan atau layanan dari sistem grid sendiri adalah untuk melakukan high through put computing dibidang penelitian, ataupun proses komputasi lain yang memerlukan banyak resource komputer.

Konsep dan Prinsip kerja grid computing

Secara singkat, grid computing berarti menyatukan seluruh sumberdaya TI ke dalam sekumpulan layanan yang bisa digunakan secara bersama-sama untuk memenuhi kebutuhan komputing perusahaan. Infrastruktur gridcomputing secara kontinyu menganalisa permintaan terhadap sumberdaya dan mengatur suplai untuk disesuaikan terhadap permintaan tersebut. Dimana data disimpan atau computer mana yang memproses permintaan tidak perlu dipikirkan. Sebagaimana arus listrik; untuk memanfaatkannya, tempat pembangkit atau bagaimana pengabelan jaringan listrik tidak perlu diketahui. Dalam menyelesaikan masalah system monolitik dan sumberdaya yang terfragmentasi, grid computing bertujuan menciptakan keseimbangan antara pengaturan suplai sumberdaya dan kontrol yang fleksibel. Sumberdaya TI yang dikelola dalam grid mencakup:

Konsep Grid Computing

Sumberdaya Infrastruktur

Mencakup hardware seperti penyimpan, prosesor, memori, dan jaringan; juga software yang didisain untuk mengelola hardware ini, seperti database, manajemen penyimpan, manajemen sistem, server aplikasi dan system operasi.

Sumberdaya Aplikasi

Adalah perwujudan logika bisnis dan arus proses dalam software aplikasi. Sumberdaya yang dimaksud bisa berupa aplikasi paket atau aplikasi buatan, ditulis dalam bahasa pemrograman, dan merefleksikan tingkat kompleksitas. Sebagai contoh, software yang mengambil pesanan dari seorang pelanggan dan mengirimkan balasan, proses yang mencetak slip gaji, dan logika yang menghubungkan telepon dari pelanggan tertentu kepada pihak tertentu pula.

Sumberdaya Informasi

Saat ini, informasi cenderung terfragmentasi dalam perusahaan, sehingga sulit untuk memandang bisnis sebagai satu kesatuan. Sebaliknya, grid computing menganggap informasi adalah sumberdaya, mencakup keseluruhan data pada perusahaan dan metadata yang menjadikan data bisa bermakna. Data bias berbentuk terstruktur, semi-terstruktur, atau tidak terstruktur, tersimpan di lokasi manapun, seperti dalam database, sistem file local.

Prinsip Kerja Grid Computing 

Dua prinsip kerja utama grid computing yang membedakannya dari arsitektur komputasi yang lain, semisal mainframe, klien-server, atau multi-tier: virtualisasi dan provisioning.

Virtualisasi 

Setiap sumberdaya (semisal komputer, disk, komponen aplikasi dan sumber informasi) dikumpulkan bersama-sama menurut jenisnya, lalu disediakan bagi konsumen (semisal orang atau program software). Virtualisasi berarti meniadakan koneksi secara fisik antara penyedia dan konsumen sumberdaya, dan menyiapkan sumberdaya untuk memenuhi kebutuhan tanpa konsumen mengetahui bagaimana permintaannya bisa terlayani.

Provisioning 

Ketika konsumen meminta sumberdaya melalui layer virtualisasi, sumberdaya tertentu di belakang layer didefinisikan untuk memenuhi permintaan tersebut, dan kemudian dialokasikan ke konsumen. Provisioning sebagai bagian dari grid computing berarti bahwa system menentukan bagaimana cara memenuhi kebutuhan konsumen seiring dengan mengoptimasi jalannya sistem secara keseluruhan.

Jenis-jenis Grid Computing

Jenis-jenis atau komponen-komponen grid computing adalah:

  1. Gram (Grid Resources Allocation & Management)Komponen ini dibuat untuk mengatur seluruh sumberdaya komputasi yang tersedia dalam sebuah sistem komputasi grid. Pengaturan ini termasuk eksekusi program pada seluruh komputer yang tergabung dalam sistem komputasi grid, mulai dari inisiasi, monitoring, sampai dengan penjadwalan dan koordinasi antar proses yang terjadi dalam sistem tersebut. Juga dapat berkoordinasi dengan sistem-sistem pengaturan sumber daya yang telah ada sebelumnya. Dengan mekanisme ini program-program yang telah dibuat sebelumnya tidak perlu dibangun ulang atau bila dimodifikasi, modifikasinya minimum.
  2. RFT/GridFTP (Reliable File Transfer/Grid File Transfer Protocol)


Komponen ini dibuat agar pengguna dapat mengakses data yang berukuran besar dari semua simpul komputasi yang telah tergabung dalam sebuah sistem komputasi secara efisien. Hal ini tentu saja berpengaruh karena kinerja komputasi tidak hanya bergantung pada kecepatan komputer yang tergabung dalam mengeksekusi program, tapi juga seberapa cepat data yang dibutuhkan dapat diakses. Data yang diakses juga tidak selalu ada pada komputer yang mengeksekusi.
  1. MDS (Monitoring and Discovery Service) 

Komponen ini dibuat untuk memonitoring proses komputasi yang sedang dijalankan agar dapat mendeteksi masalah yang timbul dengan segera. Sedangkan fungsi disovery dibuat agar pengguna mampu mengetahui keberadaan sumber daya komputasi beserta karakteristiknya.
  1. GSI (Grid Security Infrastructure) 

Komponen ini dibuat untuk mengamankan sistem komputasi grid secara keseluruhan. Komponen ini membedakan teknologi GT4 dengan teknologi-teknologi sebelumnya. Dengan menerapkan mekanisme keamanan yang tergabung dengan komponen-komponen komputasi grid lainnya, sistem ini dapat diakses secara luas tanpa sedikitpun mengurangi tingkat keamanannya. Sistem keamanan ini dibangun dengan segala komponen yang telah diuji, mencakup proteksi data, autentikasi, delegasi dan autorisasi. 

Kelebihan Grid Computing

Beberapa kelebihan dari grid computing adalah:

  1. Perkalian dari sumber daya: Resource pool dari CPU dan storage tersedia ketika idle.
  2. Lebih cepat dan lebih besar: Komputasi simulasi dan penyelesaian masalah dapat berjalan lebih cepat dan mencakup domain yang lebih luas. 
  3. Software dan aplikasi: Pool dari aplikasi dan pustaka standard, akses terhadap model dan perangkat berbeda, metodologi penelitian yang lebih baik. 
  4. Data: Akses terhadap sumber data global dan hasil penelitian lebih baik. 
  5. Ukuran dan kompleksitas dari masalah mengharuskan orang-orang dalam beberapa organisasi berkolaborasi dan berbagi sumber daya komputasi, data dan instrumen sehingga terwujud bentuk organisasi baru yaitu virtual organization.
  6. Organisasi virtual sebagai hasil kolaborasi memberikan beberapa keuntungan lebih lanjut, di antarnya :
    • Sumber daya dan orang-orang yang tersebar ; 
    • Dihubungkan oleh jaringan, melintasi domain-domain admin; 
    • Berbagi sumber daya, tujuan bersama; 
    • Dinamis; 
    • Fault-tolerant, dan 
    • Tidak ada batas-batas geografis. 

Kekurangan Grid Computing

Kekurangan pada grid computing yang lebih DItekankan disini adalah mengenai hambatan yang dialami oleh masyarakat Indonesia dalam mengaplikasikan teknologi grid computing. Hambatan-hambatan tersebut adalah sebagai berikut :
  1. Manajemen institusi yang terlalu birokratis menyebabkan mereka enggan untuk merelakan fasilitas yang dimiliki untuk digunakan secara bersama agar mendapatkan manfaat yang lebih besar bagi masyarakat luas. 
  2. Masih sedikitnya sumber daya manusia yang kompeten dalam mengelola grid computing. 
  3. Kurangnya pengetahuan yang mencukupi bagi teknisi IT maupun user non teknisi mengenai manfaat dari grid computing itu sendiri. 
Dengan adanya beberapa manfaat dan hambatan mengenai tersedianya grid computing di Indonesia, maka harus ada solusi yang berfungsi untuk mewujudkan manfaat dan menghilangkan hambatan yang muncul tersebut. Solusi itu antara lain adalah sebagai berikut : 
  1. Memberikan sosialisasi pada instansi pendidikan maupun institusi non pendidikan mengenai manfaat serta biaya dengan menggunakan sistem komputasi grid. 
  2. Kerjasama riset dan pengembangan antara departement dalam suatu perguruan tinggi dan industri. 
  3. Diberikannya mata kuliah tentang grid computing sehingga dapat menghasilkan generasi yang menguasai teknologi ini. 
  4. Adanya pengembangan aplikasi yang relevan dengan grid computing.



Distributed Computation dalam Cloud Computing
Mempelajari tentang pengunaan terkoordinasi dari komputer secara fisik terpisah atau terdistribusi, untuk dalam komputasi cloud dimana media dapat berjalan bersamaan pada banyaknya komputer yang terhubung melalui media internet.

Map Reduce danNoSQL (Not Only SQL)
Map Reduce danNoSQL (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.
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 MongoDBCassandraCouchDB, 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.

NoSQL
Nosql adalah sebuah memcache dari bagian database sederhana yang berisi key dan value. Database ini bersifat struktur storage dimana sistem databasenya yang berbeda dengan sistem database relasional. Nosql tidak membutuhkan skema table dan menghindari operasi join dan berkembang secara horizontal. Selain itu NoSQL merupakan suatu bahasan yang jauh dari arti kata yang dibaca. Tidak berarti tanpa sql query. Melainkan bagaimana suatu sql query digunakan seminimal mungkin dalam suatu program database. Dengan memanfaatkan teknologi NoSQL ini, diharapkan mampu mengurangi beban server. Selain itu, hal ini juga memudahkan programmer dalam membuat suatu program dan proses pengembangannya. Penjelasan lebih mengenai NoSQL database akan dijelaskan pada sub bab dibawah ini.
Database NoSQL, juga disebut Not Only SQL, adalah sebuah pendekatan untuk pengelolaan datadan desain database yang berguna untuk set yang sangat besar data terdistribusi. NoSQL, yang mencakup berbagai teknologi dan arsitektur, berusaha untuk memecahkan masalah skala bilitas dan kinerja data yang besar yang database relasional tidak dirancang untuk menangani.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 melarangbahasa 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

Kesimpulan
Map Reduce danNoSQL (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.
Referensi
 Hassan, Qusay (2011). "Demystifying Cloud Computing" (PDF). The Journal of Defense Software Engineering (CrossTalk) 2011 (Jan/Feb): 16–21. Retrieved 11 December 2014.
  "The NIST Definition of Cloud Computing" (PDF). National Institute of Standards and Technology. Retrieved 24 July 2011.
"Know Why Cloud Computing Technology is the New Revolution". By Fonebell. Retrieved 8 January 2015.
 "What is Cloud Computing?". Amazon Web Services. 2013-03-19. Retrieved 2013-03-20.

0 komentar:

Posting Komentar