Masalah yang dihadapi dalam usaha menyatukan sumber daya antara lain adalah skalabilitas, untuk mencakup sumber daya komputasi yang lebih baik dibutuhkan komputasi terdistribusi.
Cloud Computing adalah gabugan pemanfaatan teknologi komputer dan pengembanngan berbasis internet. Cloud adalah metafora dari internet, sebagaimana cloud yang sering digambarkan di diagram jaringan komputer. Dalam diagram jaringan komputer tersebut cloud juga merupakan abstraksi dari infastruktur kompleks yang disembunyikannya yang merupakan metode komputasi dimana kapabilitas terkait teknologi informasi disajikan sebagai suatu layanan sehingga pengguna dapat mengaksesnya lewat internet tanpa mengetahui apa yang ada di dalamnya.
Cloud Computing |
Cloud Computing sangat berguna pada saat ini yang berfungsi untuk menyimpan data pada internet. Di dalam Cloud Computing terdapat distributed computation, dimana interaksi yang dilakukan antar computer seperti mengirim dan menerima data menggunakan jaringan computer hingga pengaksesan sumberdaya bisa dilakukan secara parallel dan bisa dimanfaatkan dalam waktu yang bersamaan.
Distributed Computing adalah ilmu yang memecahkan masalah besar dengan memberikan bagian kecil dari masalah untuk banyak komputer untuk memecahkan dan kemudian menggabungkan solusi untuk bagian-bagian menjadi solusi untuk masalah tersebut. Distributed computing terkait dengan system perangkat keras dan perangkat lunak yang memiliki lebih dari satu elemen pemrosesan atau storage element.
Kegiatan ini merupakan kumpulan beberapa computer yang terhubung untuk melakukan pendistribusian, seperti mengirim dan menerima data serta melakukan interaksi lain antar computer yang dimana membutuhkan sebuah jaringan agar computer satu dan lainnya bisa saling berhubung dan melakukan interaksi. Hal ini semua dilakukan dengan Cloud Computing yang seperti kita ketahui memberikan layanan dimana informasinya disimpan di server secara permanen dan disimpan di computer client secara temporary.
Komputasi Terdistribusi merupakan salah satu tujuan dari Cloud Computing, karena menawarkan pengaksesan sumber daya secara parallel, 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, dapat menghemat biaya operasional karena tidak membutuhkan sumber daya (resourches).
Tujuan dari komputasi terdistribusi adalah menyatukan kemampuan dari sumber daya (sumber komputasi atau sumber informasi) yang terpisah secara fisik, ke dalam suatu sistem gabungan yang terkoordinasi dengan kapasitas yang jauh melebihi dari kapasitas individual komponen-komponennya.
Kenyataannya bahwa sumber daya yang dipakai oleh pengguna sistem terdistribusi berada pada lokasi fisik yang terpisah, tidak perlu diketahui oleh pengguna tersebut. Transparasi ini memungkinkan pengguna sistem terdistribusi untuk melihat sumber daya yang terpisah tersebut seolah-olah sebagai satu sistem computer tunggal, seperti yang biasa digunakannya.
Ada 2 buah komponen penting dalam komputasi terdistribusi yaitu server atau komputer pusat yang secara konstan menyediakan dan menjalankan program komputer dan database yang dibutuhkan oleh komputer lain di dalam jaringan tersebut. Serta workstation atau client yang berisi program yang ditempatkan pada server jaringan.
Distribusi komputasi ini memiliki definisi mempelajari penggunaan terkoordinasi dari computer secara fisik terpisah atau terdistribusi. Pada distributed computing ini, program dipisah menjadi beberapa bagian yang dijalankan secara bersamaan pada banyak computer yang terhubung melalui jaringan internet.
Dalam rangka untuk meningkatkan proses bisnis, setiap tingkatan dalam sistem biasanya menyebarkan beberapa server untuk mendistribusikan beban dan toleransi kesalahan. seperti distribusi beban di beberapa server dalam tingkat yang sama dapat dilihat sebagai distribusi beban horisontal, tampak seperti gambar berikut :
Horizontal distribusi beban
Salah satu batasan dari distribusi beban horisontal adalah bahwa beban tidak dapat didistribusikan lebih lanjut ketika semua server dalam tingkatan tertentu mengambil hasil dari kesalahan konfigurasi infrastruktur. dimana terlalu banyak server yang dikerahkan pada satu tingkat sementara dilain pihak ada sedikit server yang dikerahkan di lain tingkatan.
Sebuah pengamatan penting adalah bahwa dalam sistem kompleks SOA multi-tier, proses bisnis tunggal sebenarnya bisa dilaksanakan oleh beberapa jalur yang berbeda melalui tingkat perhitungan dalam rangka memberikan ketahanan dan skalabilitas.
Sebuah layanan komposit dapat direpresentasikan sebagai tingkatan pemanggilan beberapa komponen dalam sebuah infrastruktur TI berbasis SOA. Gambar berikut menggambarkan istilah-istilah di atas.
Distribusi beban vertikal
Berikut tugas analitik komposit online dapat direpresentasikan sebagai panggilan untuk Web dan Aplikasi Server (WAS) untuk melakukan pra-pemrosesan tertentu, diikuti dengan sebuah panggilan dari WAS ke server database (DB) untuk mengambil data yang dibutuhkan, setelah itu WAS meneruskan data yang ditetapkan ke server analitik khusus untuk tugas-tugas komputasi data mining yang mahal.
Tugas komposit memiliki beberapa implementasi di pusat data modern IT. Implementasi alternatif dapat memanggil prosedur yang tersimpan pada database untuk menjalankan data mining dan bukan memiliki server analitik khusus untuk melakukan tugas ini. Implementasi alternatif menyediakan distribusi beban vertikal dengan memungkinkan penjadwalan pekerjaan untuk memilih implementasi WAS dan DB saat analitik server tidak tersedia.
Reusability adalah salah satu tujuan utama dari pendekatan SOA. Sehubungan dengan reusability yang tinggi dari komponen aplikasi, adalah mungkin untuk menentukan alur kerja yang kompleks dengan beberapa cara. Namun sulit untuk menilai, mana yang merupakan penerapan yang terbaik.