Pages

Selasa, 09 Juni 2015

Quantum Computation



Quantum Computation adalah bidang studi yang difokuskan pada teknologi komputer berkembang berdasarkan prinsip-prinsip teori kuantum , yang menjelaskan sifat dan perilaku energi dan materi pada kuantum (atom dan subatom) tingkat. Quantum Computer adalah alat untuk perhitungan yang menggunakan langsung dari kuantum mekanik fenomena, seperti superposisi dan belitan , untuk melakukan operasi pada Data. Quantum Computation atau Komputer kuantum adalah alat hitung yang menggunakan sebuah fenomena mekanika kuantum, misalnya superposisi dan keterkaitan, untuk melakukan operasi data. Dalam komputasi klasik, jumlah data dihitung dengan bit; dalam komputer kuantum, hal ini dilakukan dengan qubit. Prinsip dasar komputer kuantum adalah bahwa sifat kuantum dari partikel dapat digunakan untuk mewakili data dan struktur data, dan bahwa mekanika kuantum dapat digunakan untuk melakukan operasi dengan data ini. Dalam hal ini untuk mengembangkan komputer dengan sistem kuantum diperlukan suatu logika baru yang sesuai dengan prinsip kuantum.

Ide mengenai komputer kuantum ini berasal dari beberapa fisikawan antara lain Charles H. Bennett dari IBM, Paul A. Benioff dari Argonne National Laboratory, Illinois, David Deutsch dari University of Oxford, dan Richard P. Feynman dari California Institute of Technology (Caltech).

Pada awalnya Feynman mengemukakan idenya mengenai sistem kuantum yang juga dapat melakukan proses penghitungan. Fenyman juga mengemukakan bahwa sistem ini bisa menjadi simulator bagi percobaan fisika kuantum.

Selanjutnya para ilmuwan mulai melakukan riset mengenai sistem kuantum tersebut, mereka juga berusaha untuk menemukan logika yang sesuai dengan sistem tersebut. Sampai saat ini telah dikemukaan dua algoritma baru yang bisa digunakan dalam sistem kuantum yaitu algoritma shor dan algoritma grover.

Quantum Computer dapat memproses jauh lebih cepat daripada komputer konvensional. Pada dasarnya, quantum computer dapat memproses secara paralel, sehingga berkomputasi jauh lebih cepat. Andaikan ada N data, komputer konvensional memerlukan N/2 perhitungan, sedangkan quantum computer hanya memerlukan N^1/2. Jelas bahwa untuk 1.000.000 data, komputer convensional perlu 500.000 perhitungan, sedangkan Quantum Computer hanya perlu 1000. Artinya, bisa 500 kali lebih cepat!
Ini hanya bisa dicapai dengan teori Quantum. Quantum berkata bahwa tidak ada sesuatu yang pasti. Sebuah partikel tidak bisa dikatakan pasti berada di suatu tempat, melainkan hanya probabilitas yang disebut fungsi gelombang. Kalau kita mencoba mencari atom dengan mikroskop tercanggih pun, kita tidak akan bisa tahu persis di mana atom itu berada. Ini bukan kekurangan pada alat; ini adalah sifat alam itu sendiri yang aneh. Pada saat diamati, fungsi gelombang ini runtuh – dan partikel itu menjadi nyata (karena itu, kita tidak pernah melihat sebuah fungsi gelombang).

Misal sesuatu partikel hanya mungkin bisa berada dalam dua kondisi, A atau B. Kalau kita amati, akan kita peroleh A atau B, bergantian. Namun selama tidak diamati, partikel itu akan berada pada A dan B bersamaan – partikel itu berada dalam superposisi dari A dan B. Seperti seseorang bingung memilih antara ayam dan ikan di restoran, dia akan selama mungkin menahan keputusan dan melihat menu terus, berpikir, sampai saat pelayan datang dan dia akhirnya harus memesan salah satu. Tetapi sebelum pelayan (pengamat) datang, dia berada dalam superposisi dari ayam dan ikan. Erwin Schrödinger, penemu prinsip ketidakpastian ini, dalam eksperimen khayalan Schrödinger’s Cat, bahkan membuktikan bahwa, sebelum diamati, kucing dalam eksperimennya bisa berada dalam keadaan hidup dan mati sekaligus – hidup juga dan mati juga!

Sifat yang aneh dan membingungkan ini justru diandalkan Quantum Computer. Sehebat-hebatnya komputer konvensional, dia selalu bekerja dengan bits, angka biner yang hanya bisa 1 atau 0. Quantum Computer bisa lepas dari restriksi ini, karena bisa berada dalam keadaan superposisi 1 dan 0 pada saat yang sama. Angka ini dinamai qubits (quantum bits, tentunya) yang bisa 1, bisa 0 atau bisa berada di antara 1 dan 0 – ingat, ini bukan berarti 0,6; melainkan 60% probabilitas A dan 40% probabilitas B.

Qubits yang digunakan adalah spin dari atom atau elektron. Spin, yang tidak ada analogi di fisika klasik, adalah sifat suatu partikel yang memiliki dua alternatif: up atau down. Kita bisa menganggap bahwa up adalah 1 dan down adalah 0. Selama tidak diamati, qubits bisa berada dalam superposisi dari up dan down, dan berinteraksi dengan qubits lain. Dua qubits bisa berada dalam empat keadaan sekaligus: 00, 10, 01 dan 11; empat qubits bisa delapan keadaan sekaligus. Sebuah quantum computer dengan 100 qubits bisa memproses 2100 keadaan bersamaan, sama seperti komputer konvensional dengan 1030 prosesor!

Sebuah komputer kuantum dapat mensimulasikan sebuah proses yang tidak dapat dilakukan oleh komputer klasik. Hal ini membuat para ilmuwan harus memiliki paradigma baru dalam hal permrosesan informasi. Ilmuwan harus memikirkan logika baru untuk komputer kuantum. Salah satu logika yang berhasil adalah algoritma shor yang ditemukan Peter Shor pada tahun 1995.

Lewat algoritma Shor ini, sebuah komputer kuantum dapat memecahkan sebuah kode rahasia yang saat ini secara umum digunakan untuk mengamankan pengiriman data. Kode ini disebut kode RSA. Jika disandikan melalui kode RSA, data yang dikirimkan akan aman karena kode RSA tidak dapat dipecahkan dalam waktu yang singkat. Selain itu, pemecahan kode RSA membutuhkan kerja ribuan komputer secara paralel sehingga kerja pemecahan ini tidaklah efektif

Namun, sebagai kompensasi dari semua itu, komputer kuantum juga memberikan cara baru dalam berkomunikasi secara aman lewat apa yang disebut dengan komunikasi kuantum. Dengan logika dan komunikasi quantum ini, akan didapatkan keuntungan-keuntungan seperti keamanan lebih terjamin, pemrosesan database lebih cepat, dll.

Penerapan Komputer Quantum. 

Pada tahun 2000, IBM sudah membuat quantum computer dengan 5 qubits dengan atom sebagai prosesornya. dan D-Wave perusahaan komputer asal Vancouver, Canada merilis kabar bahwa pihaknya telah mampu untuk beroperasi dengan prinsip quantum yang jauh ebih cepat dari komputer yang ada saat ini.

Komputer yang diberi nama “Orion” ini, menggunakan teknik cetakan rata yang sistematis, dipadukan dengan sebuah chip niobium superkonduksi dan suhu ultrarendah, dapat mengerjakan 16 qubit. Chip inti harus dingin hingga mendekati titik nol absolut (-125.15ºC), agar supaya dalam proses perhitungannya tetap dalam kondisi kuantum

Perusahaan D-Wave menuturkan, bahwa komputer kuantum ini bisa mengoperasikan 64 ribu hitungan secara bersamaan, dan prototipe komputer kuantum yang diperlihatkannya pada 13 Februari 2007 merupakan komputer tipe bisnis yang pertama di dunia, di dalamnya ditanami chip kuantum yang dapat mengoperasikan 16 qubit. 

- Pengoprasian Data Qubit

Qubit merupakan kuantum bit , mitra dalam komputasi kuantum dengan digit biner atau bit dari komputasi klasik. Sama seperti sedikit adalah unit dasar informasi dalam komputer klasik, qubit adalah unit dasar informasi dalam komputer kuantum . Dalam komputer kuantum, Qubit merupakan satuan yang digunakan pada quantum computing, pada komputer digital nilai 1 menyatakan bahwa adanya listrik, sedangkan nilai 0 untuk menyatakan tidak adanya arus listrik. Dalam quantum computing perilaku bilangan bit ini dinyatakan dengan perilaku atom yang sedang berputar. Atom memiliki konfigurasi spin. Spin atom bisa ke atas (up), bisa pula ke bawah (down). Misalnya saat spin atom mengarah ke atas (up) kita beri lambang 1, sedangkan spin down adalah 0. Sejumlah partikel elemental seperti elektron atau foton dapat digunakan (dalam praktek, keberhasilan juga telah dicapai dengan ion), baik dengan biaya mereka atau polarisasi bertindak sebagai representasi dari 0 dan / atau 1. Setiap partikel-partikel ini dikenal sebagai qubit, sifat dan perilaku partikel-partikel ini (seperti yang diungkapkan dalam teori kuantum ) membentuk dasar dari komputasi kuantum. Dua aspek yang paling relevan fisika kuantum adalah prinsip superposisi dan Entanglement. Entanglement (belitan) merupakan fenomena 'aneh' yang terjadi pada Quantum Computing, fenomena ini dimanfaatkan oleh ilmuan dalam pembuatan Quantum Computing.

Jika dua atom mendapatkan gaya tertentu (outside force) kedua atom tersebut bisa masuk pada keadaan ‘entangled’. Atom-atom yang saling terhubungkan dalam entanglement ini akan tetap terhubungkan walaupun jaraknya berjauhan.

Dalam keadaan ini, perilaku dua atom yang saling berkaitan akan sama dengan atom pasangannya. Jika pada atom 1 mengalami perubahan, maka atom pasangannya juda akan berperilaku sama seperti atom 1. Keadaan ini dimanfaatkan untuk mempercepat komunikasi data pada komputer. Komunikasi menggunakan komputer kuantum bisa mencapai kecepatan yang begitu luar biasa karena informasi dari satu tempat ke tempat lain dapat ditransfer secara instant. Begitu cepatnya sehingga terlihat seakan-akan mengalahkan kecepatan cahaya.

Superposisi, pikirkan qubit sebagai elektron dalam medan magnet. Spin elektron mungkin baik sejalan dengan bidang, yang dikenal sebagai spin-up, atau sebaliknya ke lapangan, yang dikenal sebagai keadaan spin-down. Mengubah spin elektron dari satu keadaan ke keadaan lain dicapai dengan menggunakan pulsa energi, seperti dari Laser - katakanlah kita menggunakan 1 unit energi laser. Tapi bagaimana kalau kita hanya menggunakan setengah unit energi laser dan benar-benar mengisolasi partikel dari segala pengaruh eksternal? Menurut hukum kuantum, partikel kemudian memasuki superposisi negara, di mana ia berperilaku seolah-olah itu di kedua negara secara bersamaan. Setiap qubit dimanfaatkan bisa mengambil superposisi dari kedua 0 dan 1. Dengan demikian, jumlah perhitungan bahwa komputer kuantum dapat melakukan adalah 2 ^ n, dimana n adalah jumlah qubit yang digunakan. Sebuah komputer kuantum terdiri dari 500 qubit akan memiliki potensi untuk melakukan 2 ^ 500 perhitungan dalam satu langkah. Ini adalah jumlah yang mengagumkan - 2 ^ 500 adalah atom jauh lebih dari yang ada di alam semesta (ini pemrosesan paralel benar - komputer klasik saat ini, bahkan disebut prosesor paralel, masih hanya benar-benar melakukan satu hal pada suatu waktu: hanya ada dua atau lebih dari mereka melakukannya). Tapi bagaimana partikel-partikel ini akan berinteraksi satu sama lain? Mereka akan melakukannya melalui belitan kuantum.

- Quantum Gates / Gates Quantum

merupakan sebuah aturan logika / Gates logika berlaku pada quantum computing. Prinsip kerja dari quantum Gates hampir sama dengan logika pada komputer digital. Jika pada komputer digital terdapat beberapa operasi logika seperti AND, OR, NOT, pada quantum computing quantum Gates terdiri dari beberapa bilangan qubits, sehingga quantum Gates lebih susah untuk dihitung daripada gerbang logika pada komputer digital.

Dalam komputasi kuantum dan khusus model sirkuit perhitungan kuantum, kuantum Gates (quantum atau logika Gates) adalah sirkuit kuantum dasar operasi pada sejumlah kecil qubit. Mereka adalah blok bangunan sirkuit kuantum, seperti logika klasik kuantum Gates adalah untuk sirkuit digital konvensional.

Tidak seperti banyak logika klasik, logika Gates kuantum reversibel. Namun, komputasi klasik dapat dilakukan dengan hanya menggunakan Gates reversibel. Sebagai contoh, reversibel Toffoli dapat melaksanakan semua fungsi Boolean. Gerbang ini memiliki setara kuantum langsung, menunjukkan bahwa sirkuit kuantum dapat melakukan semua operasi yang dilakukan oleh sirkuit klasik.

logika Quantum Gates diwakili oleh matriks kesatuan. Quantum Gates yang paling umum beroperasi pada ruang satu atau dua qubit, seperti biasa logika klasik Gates beroperasi pada satu atau dua bit. Ini berarti bahwa sebagai matriks, kuantum Gates dapat dijelaskan oleh 2 × 2 atau 4 × 4 matriks kesatuan.



- Algoritma

Ada beberapa definisi algoritma diantaranya adalah :

a.       Algoritma adalah penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat dengan jumlah kata terbatas tetapi tersusun secara logis dan matematis.

b.      Algoritma adalah suatu prosedur yang jelas untuk menyelesaikan suatu persoalan dengan menggunakan langkah-langkah tertentu dan terbatas jumlahnya.

c.       Algoritma adalah susunan langkah yang pasti, yang bila diikuti maka akan mentransformasi data input menjadi output yang berupa informasi.

 Sejarah Algoritma

Sejarah mencatat bahwa algoritma berasal dari sebuah kata al-khawarizmi yang berasal dari seorang muslim yang bernama lengkap Abu Ja’far Muhammad Ibnu Musa Al-Kwarizmi, beliau merupakan ahli matematika dan astronomi dari Persia, dan juga merupakan penulis buku “Aljabar wal Muqobala”. Beliau dianggap sebagai pencetus pertama algoritma karena di dalam buku tersebut Abu Ja’far menjelaskan langkah-langkah dalam menyelesaikan berbagai persoalan arirmatika (aljabar).

Ciri-ciri Algoritma

Menurut Donald E. Knuth penulis buku algoritma abad XX, menyatakan bahwa ada beberapa ciri algoritma, yaitu Algoritma mempunyai awal dan akhir, suatu algoritma harus berhenti setelah mengerjakan serangkaian tugas. Dengan kata lain, suatu algoritma memiliki langkah yang terbatas. Setiap langkah harus didefinisikan dengan tepat, sehingga tidak memiliki arti ganda, tidak membingungkan (not ambiguous), memiliki masukan (input) atau kondisi awal, memiliki keluaran (output) atau kondisi akhir. Algoritma harus efektif, bila diikuti benar-benar maka akan menyelesaikan masalah. 

Sesuai dengan ciri-ciri dari algoritma pada penjelasan di atas, maka dapat disimpulkan bahwa sifat suatu algoritma adalah :

a.       Input : Suatu algoritma mempunyai input atau kondisi awal sebelum dilaksanakan, bias berupa nilai-nilai peubah yang diambil dari himpunan khusus.

b.      Output : Suatu algoritma akan menghasilkan output setelah dilaksanakan. Suatu algoritma akan mengubah sebuah kondisi awal menjadi kondisi akhir, dimana nilai output diperoleh dari nilai input yang telah diproses melalui algoritma.

c.       Definiteness : Langkah-langkah yang dituliskan dalam algoritma terdefini dengan jelas sehingga mudah dilaksanakan oleh pengguna algoritma.

d.      Finiteness : Suatu algoritma harus memiliki kondisi akhir atau output setelah sejumlah langkah yang terbatas jumlahnya dilakukan terhadap setiap kondisi awal atau input yang diberikan.

e.       Effevtiveness : Setiap langkah dalam algortima dilaksanakan dalam suatu selang waktu tertentu sehingga pada akhirnya didapatkan solusi sesuai dengan yang diharapkan.

f.       Generality : Langkah-langkah algoritma berlaku untuk setiap himpunan input yang sesuai dengan persoalan yang diberikan, tidak hanya untuk himpunan tertentu.

Struktur Algoritma

Agar algoritma yang ditulis lebih teratur, maka struktur algoritma sebaiknya dibagi  ke dalam beberapa bagian. Diantaranya :

Bagian kepala (header) : memuat nama algoritma serta informasi atau keterangan tentang algoritma yang ditulis

Bagian Deklarasi ( definisi variable ) : memuat definisi nama variable, nama tetapan, nama prosedur, nama fungsi, tipe data yang akan digunakan dalam algoritma.

Bagian Deskripsi (rincian langkah ) : memuat langkah-langkah penyelesaian masalah, termasuk beberapa perintah seperti baca data, tampilkan, ulangi, yang mengubah data input menjadi output.

Contoh berikut ini adalah struktur algoritma. Algoritma ini akan menghitung luas sebuah luas lingkaran dengan input jejari lingkaran tersebut. Luas lingkaran adalah phi*jari*jari.

Algoritma Luas_lingkaran

{Menghitung sebuah luas lingkaran apabila jari-jari tersebut diberikan}

Deklarasi

{Definisi nama tetapan}

Const phi = 3.14;

{Definisi nama peubah/variabel}

Real jari-jari, Luas;

Deskripsi

Read(jari-jari);

Luas = phi * jari-jari * jari_jari;

Write(Luas);

Pemrograman

Pemrograman adalah aktifitas yang berhubungan dengan pembuatan program dengan mengikuti kaidah bahasa pemrograman tertentu. Dalam konteks pemrograman terdapat sejumlah bahasa pemrograman seperti Pascal, C, C#, dan BASIC. Adapun secara garis besar bahasa pemrograman dikelompokkan menjadi :

a.       Bahasa pemrograman tingkat tinggi ( high-level language )

Adalah bahasa pemrograman yang berorientasi kepada bahasa manusia. Program yang dibuat dengan menggunakan bahasa pemrograman yang mudah dipahami oleh manusia, biasanya menggunakan bahasa inggris, misalnya IF, FOR, While, dll.

Contoh bahasa pemrograman tingkat tinggi adalah : C, C#, BASIC, PHP, VB, VB.NET, JAVA, dll.

b.      Bahasa pemrograman tingkat rendah ( low-level language )

Adalah bahasa pemrograman yang berorientasi kepada mesin. Bahasa ini hanya menggunakan kode biner ( hanya mengenal bilangan 0 dan 1 ) atau suatu kode sederhana untuk menggantikan kode-kode tertentu dalam system biner.

Contoh : kode ASCII yang merepresentasikan karakter ke dalam bilangan biner.



Sumber : 

            http://www.fisikanet.lipi.go.id/utama.cgi?artikel&1063391045&53


http://rcaesario.blogspot.com/2013/04/pengantar-quantum-computation.html






Read more >>

Cloud Computing



- 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 SaaSWeb 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 lunakdan data yang tersimpan di server. Komputasi awan saat ini merupakan trend teknologi terbaru, dan contoh bentuk pengembangan dari teknologi Cloud Computing ini adalah iCloud.
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.
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.


- Virtualisasi dalam cloud computing
Virtualisasi sebagai komponen utama pembangun teknologi cloud computing memiliki keuntungan yang sangat besar. Akan tetapi, perlu diingat bahwa virtualisasi juga memiliki kerentananan terhadap pengaksesan data atau dengan kata lain kemanan data yang masih harus dipertanyakan. Selain itu, sebelum melangkah ke komputasi awan, sebuah perusahaan terlebih dahulu harus menerapkan virtualisasi data centernya secara internal.
Virtualisasi bisa diartikan sebagai  pembuatan suatu bentuk atau versi virtual dari sesuatu yang bersifat fisik, misalnya sistem operasi,  perangkat storage/penyimpanan data atau sumber daya jaringan. Virtualisasi dan komputasi awan memungkinkan komputer pengguna untuk mengakses komputer canggih dan aplikasi perangkat lunak yang diselenggarakan oleh kelompok remote dari server, tapi masalah keamanan yang berkaitan dengan  privasi data akan membatasi kepercayaan publik dan memperlambat adopsi teknologi  baru. Virtualisasi memungkinkan  penyatuan kekuatan komputasi dan  penyimpanan beberapa komputer, yang kemudian dapat digunakan  bersama oleh beberapa pengguna.
Alasan Penggunaan Virtualisasi
a. Pengurangan Biaya Investasi Hardware. Investasi hardware dapat ditekan lebih rendah karena virtualisasi hanya mendayagunakan kapasitas yang sudah ada. Tak  perlu ada penambahan perangkat komputer, server dan pheriperal secara fisik. Kalaupun ada  penambahan kapasitas harddisk dan memori, itu lebih ditujukan untuk mendukung stabilitas kerja komputer induk
 b. Kemudahan Backup & Recovery. Server-server yang dijalankan didalam sebuah mesin virtual dapat disimpan dalam 1 buah image yang berisi seluruh konfigurasi sistem. Jika satu saat server tersebut crash, kita tidak perlu melakukan instalasi dan konfigurasi ulang. Cukup mengambil salinan image yang sudah disimpan, merestore data hasil backup terakhir dan server  berjalan seperti sedia kala. Hemat waktu, tenaga dan sumber daya.
c. Kemudahan Deployment. Server virtual dapat dikloning sebanyak mungkin dan dapat dijalankan pada mesin lain dengan mengubah sedikit konfigurasi. Mengurangi beban kerja para staff IT dan mempercepat proses implementasi suatu sistem
d. Mengurangi Panas. Berkurangnya jumlah perangkat otomatis mengurangi panasnya ruang server/data center. Ini akan  berimbas pada pengurangan  biaya pendinginan/AC dan pada akhirnya mengurangi biaya  penggunaan listrik
 e. Mengurangi Biaya Space. Semakin sedikit jumlah server  berarti semakin sedikit pula ruang untuk menyimpan  perangkat. Jika server ditempatkan pada suatu co-location server/data center, ini akan berimbas pada pengurangan  biaya sewa
f. Kemudahan Maintenance & Pengelolaan. Jumlah server yang lebih sedikit otomatis akan mengurangi waktu dan biaya untuk mengelola. Jumlah server yang lebih sedikit  juga berarti lebih sedikit jumlah server yang harus ditangani
g. Standarisasi Hardware. Virtualisasi melakukan emulasi dan enkapsulasi hardware sehingga proses pengenalan dan  pemindahan suatu spesifikasi hardware tertentu tidak menjadi masalah. Sistem tidak perlu melakukan deteksi ulang hardware.
h. Kemudahan Replacement. Proses penggantian dan upgrade spesifikasi server lebih mudah dilakukan. Jika server induk sudah overload dan spesifikasinya tidak mencukupi lagi, kita bisa dengan mudah melakukan upgrade spesifikasi atau memindahkan virtual machine ke server lain yang lebih  powerful.
 Prinsip Keamanan
Tiga prinsip dasar keamanan informasi yaitu
a. Kerahasiaan (confidentiality): adalah pencegahan dari  pengungkapan yang tidak sah secara disengaja atau tidak terhadap sebuah konten. Kehilangan kerahasiaan dapat terjadi dalam berbagai cara. Sebagai contoh, kehilangan kerahasiaan dapat terjadi melalui  pelepasan secara sengaja informasi perusahaan atau melalui penyalahgunaan hak  jaringan. 
b. Integritas (integrity): adalah  jaminan bahwa pesan terkirim adalah pesan yang diterima dan tidak diubah. Kehilangan integritas dapat terjadi melalui serangan yang disengaja untuk mengubah informasi.
c. Ketersediaan (availability): konsep ini mengacu pada unsur-unsur yang menciptakan keandalan dan stabilitas dalam  jaringan dan sistem. Hal ini menjamin konektivitas yang mudah diakses ketika dibutuhkan, memungkinkan  pengguna berwenang untuk mengakses jaringan atau sistem. Konsep ketersediaan juga cenderung mencakup area dalam sebuah sistem informasi yang secara tradisional tidak dianggap sebagai keamanan murni (seperti  jaminan pelayanan, kinerja, dan sampai waktu), namun yang jelas dipengaruhi oleh pelanggaran seperti serangan denial-of-service (DoS)
- Database yang berintegrasi dengan cloud
Integrasi database merupakan suatu penggabungan database yang dapat saling berhubungan satu sama lain dengan berbagai cara yang sesuai keperluan. Dalam melakukan integrasi database, data dalam sebuah sistem tidak boleh hilang atau kekurangan satu datapun.  Tujuan untuk melakukan integrasi database yaitu untuk mempermudah pekerjaan dalam mengelola data yang berskala besar. Dengan dilakukannya integrasi database maka database-database yang disekitarnya dapat saling berhubungan dengan mudah sesuai dengan keperluannya masing-masing.
      Sistem integrasi data biasanya disebut secara formal sebagai tripel GSM. G untuk global schema (skema global), S untuk set dari skema sumber yang heterogen, dan M untuk mapping (pemetaan) antara query dari sumber dan skema global. G dan S diekspresikan dalam bahasa alfabetis yang disusun oleh simbol untuk tiap hubungan respektifnya. Pemetaan M terdiri dari pernyataan antara query dari G dan query dari S. Saat user mengajukan query dari sistem data integrasi, mereka mengajukan query dari G dan pemetaannya kemudian menegaskan koneksi antara elemen di skema global dengan skema sumber.
- Komputasi Terdistribusi dalam Cloud Computing
Komputasi terdistribusi yang di maksud di sini adalah suatu teknik yang dapat digunakan untuk menyelesaikan berbagai masalah dalam cloud computing. Komputasi Terdistribusi merupakan salah satu tujuan dari Cloud Computing, karena menawarkan pengaksesan sumber daya secara paralel, 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 dan juga dapat menghemat biaya operasional karena tidak membutuhkan sumber daya (resourches). Komputasi terdistribusi adalah konsep yang menggunakan sistem terdistribusi terdiri dari banyak kode yang diatur sendiri untuk memecahkan masalah yang sangat besar atau yang biasanya sulit untuk diselesaikan dengan satu komputer. Jadi, masalah yang besar akan di proses ke banyak komputer kemudian proses tersebut dipecahkan sehingga mendapatkan solusi-solusi yang lebih kecil apabila sudah didapatkan maka disatukan kembali dalam satu solusi yang besar dan terintegrasi. Komputasi terdistribusi adalah konsep menggunakan sistem terdistribusi terdiri dari banyak node diatur sendiri untuk memecahkan masalah yang sangat besar atau yang biasanya sulit untuk diselesaikan dengan satu komputer.
- Map Reduce dan NoSql
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. Untuk menggunakan MapReduce, seorang programer cukup membuat dua program yaitu program yang memuat kalkulasi atau prosedur yang akan dilakukan oleh proses Map dan Reduce.. Map-Reduce merupakan sebuah konsep teknis yang sangat penting di dalam teknologi cloud seperti dapat membantu programmer membuat aplikasi cloud computing.
NoSQL atau singkatan dari Not Only SQL ini adalah tipe database yang sangat jauh berbeda dengan konsep RDBMS ataupun ODBMS. Perbedaan utamanya sendiri yaitu karena tidak mengenal istilah relation dan tidak menggunakan konsep schema. Dalam NoSQL, setiap tabel berdiri sendiri tanpa tergantung dengan tabel lainnya.
NoSQL Database adalah sistem menejemen database yang berbeda dari sistem menejemen database relasional yang klasik dalam beberapa hal. NoSQL ini  mungkin tidak membutuhkan skema table dan umumnya menghindari operasi join dan berkembang secara horisontal.
NoSql database itu sendiri sebenarnya adalah penyebutan untuk database yang tidak memiliki relasi. Jika database yg berelasi biasanya menggunakan Sql, maka NonSql ini menggunakan berbagai cara untuk menyimpan datanya.
- Komputasi Grid
 adalah penggunaan sumber daya yang melibatkan banyak komputer yang terdistribusi dan terpisah secara geografis untuk memecahkan persoalan komputasi dalam skala besar.
 Menurut Ian Foster, terdapat ciri yang dapat digunakan untuk mengidentifikasi bahwa suatu sistem melakukan komputasi grid yaitu :
a.       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.
b.      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.
c.       Sistem tersebut berusaha untuk mencapai kualitas layanan yang canggih, (nontrivial quality of service) yang jauh diatas kualitas layanan komponen individu dari komputasi grid tersebut.
Komputasi grid adalah sebuah asosiasi sumber daya komputer dari beberapadomain administrasi untuk mencapai tujuan bersama dengan berbagai layanan kepada pengguna. Dalam komputasi grid pengguna dapat mengakses sumber daya seperti, proses, penyimpanan, data dan aplikasi dengan sedikit atau tanpa pengetahuan tentang lokasifisik sumber daya dan teknologi yang mendasari digunakan.
Komputasi grid sebenarnya merupakan sebuah aplikasi pengembangan dari jaringan komputer (network). Hanya saja, tidak seperti jaringan komputer konvensionalyang berfokus pada komunikasi antar pirati (device), aplikasi pada Komputasi griddirancang untuk memanfaatkan sumber daya pada terminal dalam jaringannya. Gridcomputing biasanya diterapkan untuk menjalankan sebuah fungsi yang terlalu kompleksatau terlalu intensif untuk dikerjakan oleh satu sistem tunggal.Komputasi grid (Komputasi Grid) merupakan salah satu dari tipe KomputasiParalel, adalah penggunaan sumber daya yang melibatkan banyak komputer terpisahsecara geografis namun tersambung via jalur komunikasi (termasuk Internet) untukmemecahkan persoalan komputasi skala besar. Semakin cepat jalur komunikasi terbuka,maka peluang untuk menggabungkan kinerja komputasi dari sumber-sumber komputasiyang terpisah menjadi semakin meningkat. Dengan demikian, skala komputasiterdistribusi dapat ditingkatkan secara geografis lebih jauh lagi, melintasi batas-batasdomain administrasi yang ada.
Dalam buku The Grid:Blue Print for a New Computing Infrastructure dijelaskan bahwa "A computational grid is a hardware and software infrastructurethat provides dependable, consistent, pervasive, and inexpensive access to high-endcomputational capabilities."
Ini berarti yang dimaksud dengan komputasi gridadalah infrastruktur perangkat keras dan perangkat lunak yang dapatmenyediakan akses yang bisa diandalkan, konsisten, tahan lama dan tidak mahalterhadap kemampuan komputasi mutakhir yang tersedia.Komputasi grid adalah suatu bentuk komputasi terdistribusi yangmelibatkan koordinasi dan berbagi komputasi, aplikasi, data dan penyimpanan atausumber daya jaringan di seluruh organisasi dinamis dan geografis. Teknologi Gridberusaha menangani masalah komputasi yang kompleks dan memungkinkanmemungkinkan akses ke basis sumber daya komputer.
Komputasi grid adalah istilah yang mengacu pada kombinasi dari sumber dayakomputer dari domain administrasi ganda untuk mencapai tujuan bersama. grid bisadianggap sebagai sistem terdistribusi dengan beban kerja non-interaktif yang melibatkansejumlah besar file. Apa yang membedakan komputasi grid dari konvensional sistemkomputasi kinerja tinggi seperti komputasi cluster adalah bahwa grid cenderung lebihlonggar digabungkan, heterogen, dan tersebar secara geografis. Walaupun grid bisadidedikasikan untuk aplikasi khusus, itu lebih umum bahwa sebuah grid tunggal akan digunakan untuk berbagai tujuan yang berbeda. Grid sering dibangun dengan bantuan daritujuan grid software-perpustakaan umum dikenal sebagai middleware.
Karakteristik komputasi grid diantaranya adalah sebagai berikut
1. Large Scale (berskala besar)
Komputasi grid 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.
2. Distribusi geografis
Sumber daya komputasi grid memungkin lokasi di tempat yang jauh.
3. Heterogenitas
Komputasi grid 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.
4. Resource Sharing
Sumber daya milik berbagai organisasi dapat diakses oleh organisasi lainnya (pengguna) .
5. Multiple administrations
Setiap organisasi dapat membentuk keamanan yang berbeda dan kebijakan administratif di mana sumber daya yang dimiliki dapat diakses dan digunakan.
6. Resource coordination
Sumberdaya dalam komputasi grid harus dikoordinasikan untuk memberikan kemampuan komputasi yang handal.
7. Transparent access
Komputasi grid harus dilihat sebagai komputer virtual yang tunggal
8. Dependable access
Komputasi grid 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
9. Consistent access
Komputasi grid harus dibangun dengan standar pelayanan , protokol dan interface sehingga menyembunyikan heterogenitas sumber daya sementara dan memungkinkan skalabilitas . Tanpa standar tersebut, pengembangan aplikasi dan penggunaan secarameluas tidak akan mungkin terjadi.
10.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
Komponen Komputasi Grid
Komponen-komponen komputasi grid 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.
3. MDS (Monitoring and Discovery Services)
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.
4. 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.
Topologi Komputasi Grid
1. Intragrid
Sebuah intragrid topologi khas, ,ada dalam satu organisasi, menyediakan set dasar layanan Grid. Organisasi tunggal dapat terdiri dari sejumlah komputer yang  berbagi domain keamanan bersama, dan berbagi data internal di jaringan pribadi. Karakteristik utama dari intragrid adalah penyedia keamanan tunggal, bandwidth pada  jaringan pribadi yang tinggi dan selalu tersedia, dan ada satu lingkungan dalam satu  jaringan. Dalam sebuah intragrid, lebih mudah untuk merancang dan mengoperasikan komputasi grid dan data. Sebuah intragrid menyediakan satu set yang relatif statis sumber daya komputasi dan kemampuan untuk dengan mudah berbagi sistem jaringan antar data.
2. Extragrid
Berdasarkan sebuah organisasi tunggal, extragrid memperluas konsep dengan menyatukan dua atau lebih intragrids. Sebuah extragrid, seperti digambarkan,  biasanya melibatkan lebih dari satu penyedia keamanan, dan tingkat kompleksitas manajemen meningkat. Karakteristik utama dari extragrid tersebar keamanan,  beberapa organisasi, dan konektivitas remote / WAN. Dalam sebuah extragrid, sumber daya menjadi lebih dinamis dan grid Anda  perlu lebih reaktif untuk kegagal sumber daya dan komponen. Desain menjadi lebih rumit dan layanan informasi menjadi relevan untuk memastikan bahwa sumber daya grid memiliki akses ke manajemen beban kerja pada waktu berjalan. Sebuah bisnis akan mendapat manfaat dari extragrid jika ada inisiatif bisnis untuk mengintegrasikan dengan mitra bisnis eksternal terpercaya. Sebuah extragrid  juga bisa digunakan dalam kapasitas B2B dan / atau untuk membangun hubungan kepercayaan.
 3. Intergrid
Sebuah intergrid membutuhkan integrasi dinamis aplikasi, sumber daya, dan  jasa dengan pola, pelanggan, dan setiap organisasi yang berwenang lainnya yang akan memperoleh akses ke jaringan melalui internet / WAN.Sebuah intergrid topologi, seperti digambarkan, terutama digunakan oleh perusahaan rekayasa, industri ilmu kehidupan, produsen, dan dengan bisnis di industri keuangan. Karakteristik utama dari intergrid meliputi keamanan tersebar, beberapa organisasi, dan konektivitas remote / WAN. Data dalam intergrid adalah data publik global, dan aplikasi (baik verticaland horisontal) harus dimodifikasi untuk khalayak global. Sebuah bisnis mungkin menganggap suatu yang diperlukan intergrid jika ada kebutuhan untuk komputasi peer-to-peer, sebuah komunitas komputasi kolaboratif, atau disederhanakan proses dengan organisasi yang akan menggunakan intergrid akhir-to-end.
Kelebihan dan kekurangan Komputasi Grid
Beberapa kelebihan dari komputasi grid 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.
Kekurangan Komputasi grid
Kekurangan pada komputasi grid yang lebih ditekankan disini adalah mengenai hambatan yang dialami oleh masyarakat Indonesia dalam mengaplikasikan teknologi komputasi grid. 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 komputasi grid.
3)      Kurangnya pengetahuan yang mencukupi bagi teknisi IT maupun user non teknisi mengenai manfaat dari komputasi grid itu sendiri.

Sumber :
Read more >>