Senin, 27 April 2015

PENGANTAR KOMPUTASI CLOUD

1.      Pendahuluan
Komputasi awan (bahasa Inggris: cloud computing) adalah gabungan pemanfaatan teknologi komputer ('komputasi') dan pengembangan berbasis Internet ('awan'). 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 (as a service), sehingga pengguna dapat mengaksesnya lewat Internet ("di dalam awan") 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 web dengan 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.

a.      Sejarah
Pada tahun 50-an, Cloud Computing memiliki konsep yang mendasar. Ketika komputer mainframe yang tersedia dalam skala yang besar dalam dunia pendidikan dan perusahaan dapat diakses melalui komputer terminal disebut dengan Terminal Statis. Terminal tersebut hanya dapat digunakan untuk melakukan komunikasi tetapi tidak memiliki kapasitas pemrosesan internal. Agar penggunaan mainframe yang relatif mahal menjadi efisien maka mengembangkan akses fisik komputer dari pembagian kinerja CPU. Hal ini dapat menghilangkan periode tidak aktif pada mainframae, memungkinkan untuk kembali pada investasi. Hinga pertengahan tahun 70-an dikenal dengan RJE remote proses Entry Home Job yang berkaitan besar dengan IBM dan DEC Mainframe.

Tahun 60-an, John McCarthy berpendapat bahwa “Perhitungan suatu hari nanti dapat diatur sebagai utilitas publik.” Di buku Douglas Parkhill, The Challenge of the Computer Utility menunjukkan perbandingan idustri listrik dan penggunaan pada listrik di masyarakat umum dan pemerintahan dalam penyediaan cloud computing. Ketika Ilmuan Herb Grosch mendalilkan bahwa seluruh dunia akan beroperasi pada terminal bodah didukung oleh sekitar 15 pusat data yang besar. Karena komputer ini sangat canggih, banyak perusahaan dan entitas lain menyediakan sendiri kemampuan komputasi melalui berbagai waktu danbeberapa organisasi, seperti GE GEISCO, Anak perusahaan IBM Biro Corporation, Tymshare, CSS Nasional, Data Dial, Bolt, dan Beranek and Newman.

Tahun 90-an, perusahaan telekomunikasi mulai menawarkan VPN layanan jaringan pribadi dengan kualitas sebanding pelayanannya, tapi dengan biaya yang lebih rendah. Karena merasa cocok dengan hal tersebut untuk menyeimbangkan penggunaan server, mereka dapat menggunakan bandwidth jaringan secara keseluruhan. Lalu menggunakan simbol awan sebagai penunjuk titik demarkasi antara penyedia dan pengguna yang saling bertanggung jawab. Cloud computing memperluas batas iniuntuk menutup server serta infrastruktur jaringan.

Sejak Tahun 2000, Amazon sebagai peran penting dalam semua pengembangan cloud computing dengan memodernisasi pusat data, seperti jaringan komputer yang menggunakan sesedikit 10% dari kapasitas mereka pada satu waktu. Setelah menemukan asitektur awan baru, mengalami peningkatan efisiensi internal sedikit bergerak capat “Tim Dua-Pizza”(Tim kecil untuk memberi makan dengan dua pizza) dapat menambahkan fitur baru dengan cepat dan lebih mudah. Kemudian Amazon mulai mengembangkan produk baru sebagai penyedia cloud computing untuk pelanggan eksternalm dan meluncurkan Amzaon Web Service (AWS) tahun 2006.

Awal tahun 2008, Eucalypus menjadi yang pertama open source, AWS API Platform yang kompatibel menyebarkan awan swasta. Open Nebula ditingkatkan dalam proyek Eropa Reservoir Komisi yang sudah didanai. Pada tahun yang sama, agar difokuskan pada penyediaan jaminan kualitas layanan (seperti yang dipersyaratkan oleh aplikasi interaktif real-time) untuk infrastruktur berbasis cloud dalam rangka IRMOS Eropa Proyek yang didanai Komisi. Pertengahan 2008, Gartner melihat kesempatan untuk membentuk hubungan antara konsumen layanan TI, mereka menggunakan layanan TI dan menjualnya. Dan mengamati bahwa “Organisasi layanan TI yang beralih dari perangkat keras milik perusahaan dan aset perangkat lunak untuk digunakan layanan berbasis model sehingga pergeseran diproyeksikan untuk komputasi.....akan menghasilkan pertumbuhan dramatis dalam produk IT di beberapadaerahdan pengurangan yang signifikan di daerah lain.”.

Tanggal 1 Maret 2011,IBM mengumumkan SmartCloud kerangka IBM Smarter Planet untuk mendukung. Di antara berbagai komponen dasar Smarter Computing, cloud computing adalah bagian yang paling penting.

b.      Manfaat
·         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

2.      Pengantar Komputasi Grid
Bagi  para  peneliti  di  negara-negara  yang  kemampuan  ekonominya  terbatas  maka  solusi  yang  diberikan  oleh  teknologi  grid  computing  ini  merupakan suatu alternatif yang harus dipertimbangkan dengan amat serius.  Pengembangan  ilmu  pengetahuan  dan  teknologi,  termasuk  yang  dilakukan  dengan  menggunakan  bantuan  komputer  (e-Science),  tidak  harus  terhenti  hanya karena keterbatasan dana.  Teknologi  grid  computing  memungkinkan  para  peneliti  memanfaatkan sumber daya komputasi yang telah ada semaksimal mungkin.  Dengan  menggunakan  teknologi  ini,  para  peneliti  dapat  menggabungkan  komputer-komputer  yang  berada  di  tempat-tempat  yang  secara  geografis  terpisah  menjadi  suatu  kesatuan  sistem  komputer.  Gabungan  banyak  komputer  ini  secara  keseluruhan  mampu  menyediakan  sumber  daya  komputasi  yang  setara  atau  bahkan  lebih  dengan  komputer  berkategori  supercomputer.  Lebih  lanjut,  sistem  komputer  ini  dapat  digunakan  secara  bersama-sama oleh para peneliti yang juga berasal dari intansi-instansi yang  lokasinya berlainan.  Secara  keseluruhan,  tidak  saja  teknologi  grid  computing  memungkinkan  para  peneliti  di  negara  seperti  Indonesia  menerapkan  e- Science  untuk  mengembangkan  ilmu  pengetahuan  dan  teknologi  dengan  biaya  yang  relatif  “terjangkau”,  tetapi  juga  dapat  memanfaatkan  sumber  daya  komputasi  yang  ada  seefisien  mungkin  secara  bersama-sama  oleh  banyak peneliti.

a.      Jenis-jenisnya
o   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.

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

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

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

3.      Virtualisasi
Virtualisasi adalah versi virtual dari sebuah sistem operasi, server, perangkat penyimpanan atau sumber daya jaringan. Anda mungkin mengetahui sedikit tentang virtualisasi jika pernah membagi-bagi hardware menjadi beberapa partisi atau bagian. Virtualisasi sistem operasi memiliki arti sebuah hardware yang disekat menjadi beberapa bagian kemudian diberikan sistem operasi masing-masing. Proses ini bisa dilakukan dengan bantuan software virtualisasi. Teknologi ini sudah dikenal sejak beberapa puluh tahun yang lalu, memungkinkan admin untuk meningkatkan efesiensi.

a.    Jenis-jenisnya :
·         Virtualisasi jaringan: merupakan metode untuk mengkombinasikan resource yang ada pada sebuah jaringan dengan membagi-bagi bandwith ke dalam saluran-saluran khusus. Masing-masing saluran bekerja secara mandiri atau tidak dipengaruhi oleh saluran lainnya, sehingga bisa diterapkan pada server atau perangkat yang berbeda-beda. Bisa dibilang virtualisasi berfungsi untuk menyembunyikan kerumitan dari sebuah jaringan dengan membaginya ke dalam beberapa bagian yang lebih mudah untuk dikelola.
·         Virtualisasi penyimpanan: adalah pemecahan disk space menjadi beberapa bagian yang lebih kecil. Virtualisasi disk space biasanya dipergunakan pada area jaringan.
·         Virtualisasi server: adalah proses untuk membagi resource server (processor, RAM, CPU, disk space) untuk beberapa pengguna. Tujuannya adalah untuk menghindarkan pengguna dari kerumitan pengoperasian server dan meningkatkan pemanfaatan resource.

4.      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, masing-masing yang diselesaikan oleh satu komputer.

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

6.      NoSQL Database
Database NoSQL, juga disebut Not Only SQL, adalah sebuah pendekatan untuk pengelolaan data dan desain database yang berguna untuk set yang sangat besar data terdistribusi. NoSQL, yang mencakup berbagai teknologi dan arsitektur, berusaha untuk memecahkan masalah skalabilitas 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 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.