Senin, 03 Juni 2013

Komputasi Grid

Ringkasan

Apa jenis aplikasi yang dapat menggunakan grid?
Ada banyak tujuan berbeda dari penggunaan komputasi grid dan ada banyak masalah perbedaan yang membutuhkan teknologi yang mendasar. Perbedaan itu dapat diklasifikasikan dalam 5 kelas, yaitu Distributed Supercomputing, High Throughput, On Demand, Data Intensive dan Collaborative Computing.

Siapa yang akan menggunakan komputasi grid?
Ada berbagai macam kelompok di masyarakat yang dapat keuntungan dari Komputasi Grid. Komunitas seperti pemerintah, lembaga kesehatan, kolaborasi ilmu dan lain lain semuanya membutuhkan kemampuan untuk berbagi data dan CPU power. Karena ada banyak area yang dapat mempergunakan grid, kami tidak berharap untuk melihat hanya satu arsitekturgrid, tetapi berbagai macam.

Apa yang terlibat dalam membangun sebuah grid?
Semua tergantung grid tersebut akan digunakan untuk apa, satu jawaban saja tidak cukup.Grid dibagi dalam 4 kelompok utama diurutkan dari skala. End Systems, Clusters, Intranet dan Internet.

Pendekatan apa yang dibutuhkan untuk mengembangkan komputasi grid?
Salah satu kebutuhan untuk membagi pengembangan komputasi grid setidaknya ada 3 level. Level-level tersebut seperti lapisan protokol yang membangun World Wide Web saat ini. Dimana setiap lapisan di standarisasi sehingga menjadi mudah untuk mengembangkan aplikasi baru. Pengembang lapisan tersebut dapat berupa grid developers (pengembanggrid), tool developers (pengembang alat) and application developers (pengembang aplikasi).

Apa yang dibutuhkan komputasi grid agar menjadi layanan yang digunakan setiap orang?
Pengembangan komputasi grid perlu di standarisasikan agar menjadi kuat, efektif dan mudah digunakan. Menciptakan kemungkinan untuk aplikasi baru yang akan diproduksi secara efektif dan murah.
Pengenalan Komputasi Grid
Banyak proyek penelitian yang memerlukan banyak CPU time, beberapa memerlukan banyak memori dan beberapa proyek membutuhkan kemampuan untuk komunikasi real-time. Saat ini komputer super tidak cukup untuk menyelesaikan masalah ini. Komputer super tidak mempunyai kapasitas, bahkan jika computer super punya kapasitas, tidak ekonomis untuk menggunakan sumber daya tersebut.

Komputasi grid adalah solusi untuk semua masalah ini dan banyak lagi. Mereka menawarkan cara yang nyaman untuk menghubungkan banyak perangkat (misalnya;prosesor, memori dan perangkat I/O) sehingga pengguna akhir dapat, jika diizinkan, menggunakan semua perangkat komputasi gabungan untuk jumlah waktu tertentu.

Masalah yang berbeda harus ditangani dengan cara yang berbeda. Beberapa masalah mudah untuk diubah menjadi sub masalah, sedangkan masalah lainnya harus menggunakan teknologi yang mendasari dan algoritma yang canggih. Alasan di balik penggunaan jaringan bisa sangat berbeda. Ada lima kelas aplikasi untuk komputasi grid yang akan dibahas secara terpisah.

·         Distributed Supercomputing (Superkomputer Terdistribusi)
Distributed Supercomputing (Superkomputer Terdistribusi) adalah kelas aplikasi pertama dan digunakan untuk mengatasi masalah yang membutuhkan kinerja komputasi lebih  daripada apa yang superkomputer dapat berikan. Masalah yang dapat dipecahkan adalah Distributed Interactive Simulation (Simulasi Interaktif Terdistribusi), High-resolution Chemistry Simulation (Simulasi Kimia Resolusi Tinggi), Climate Modelling (Pemodelan Iklim)dan lain-lain.

·         High-throughput Computing (Komputasi Throughput Tinggi)
High-throughput Computing (Komputasi Throughput Tinggi) digunakan untuk masalah yang digabungkan secara lemah/longgar yang bertentangan dengan masalah dalam superkomputer terdistribusi. Oleh karena itu masalah-masalah tersebut lebih mudah untuk dibagi menjadi subproses, yang dapat diselesaikan sendiri dengan ribuan komputer pribadi biasa. Misalnya AMD menggunakan ribuan komputer mereka untuk merancang prosesor K6 dan K7.
·         On-Demand Computing (Komputasi Sesuai Permintaan)
On-Demand Computing (Komputasi Sesuai Permintaan) digunakan untuk mengatasi penggunaan sumber daya  jangka pendek. Alasan utama di balik on-demand, adalah untuk menghemat biaya dengan berbagi sumber daya. Sumber daya ini dapat berupa program canggih untuk menyelesaikan beberapa tugas, perangkat seperti sensor dan daya komputer. Ini bekerja karena setiap pengguna tidak perlu sumber daya sepanjang waktu. Tantangan untuk membuat ini bekerja adalah untuk mendapatkan kelompok besar atau kelompok orang untuk berbagi sumber daya mereka. Karena itu harus ada penjadwalan yang baik. Seseorang mungkin tidak ingin berbagi pekerjaan mereka dengan orang lain sehingga jaringan harus aman terhadap gangguan dan informasi tidak bocor. Sistem ini harus toleransi kesalahan, jika tidak orang-orang tidak dapat melakukan pekerjaan mereka, yang mana akan menyebabkan perusahaan dalam ketidakefektivitas dan juga menyebabkan komplain. Harus ada juga beberapa sistem pembayaran sehingga mereka yang menggunakan sumber daya membayar untuk itu.

·         Data-intensive Computation (Komputasi Data Intensif)
Data-intensive Computation (Komputasi Data Intensif) digunakan untuk mensintesis banyak data yang didistribusikan secara geografis dalam database. Misalnya eksperimen energi tinggi menghasilkan petabyte data setiap tahun. Untuk menyimpan begitu banyak data, harus didistribusikan ke lokasi-lokasi yang berbeda. Ada juga banyak ilmuwan yang perlu mendapatkan pegangan dari beberapa data di seluruh dunia. Di sini tantangan utama adalah penjadwalan data volume tinggi melalui berbagai tingkat hirarki.

·         Collaborative Computing (Komputasi Kolaboratif)
Collaborative Computing (Komputasi Kolaboratif) digunakan untuk memungkinkan orang sekitar untuk bekerja dan berinteraksi secara real-time dengan satu sama lain. Collaborative Computing sering terstruktur dalam ruang berbagi virtual, di mana mereka juga berbagi sumber daya dan data, yang juga merupakan isu utama dalam aplikasi on-demand dan jaringan data-intensif. Tapi di sini tantangan utama adalah untuk memungkinkan orang untuk berinteraksi secara real-time tanpa gangguan.
Seperti yang bisa kita lihat, banyak alasan dan masalah yang berbeda untuk menggunakankomputasi grid. Komputasi grid memerlukan pendekatan teknis yang berbeda. Oleh karena itu akan memerlukan banyak usaha untuk menstandarisasikan teknologi jaringan untuk memenuhi setiap aplikasi.

Siapa yang Akan Menggunakan Komputasi Grid?

Ilmuwan/Scientist melakukan perhitungan CPU intensif, tetapi ada juga banyak kelompok lain yang akan mendapat manfaat dari konsep komputasi grid.

Ø  ∙ Government (Pemerintah)
Pemerintah adalah sebuah komunitas yang relatif kecil yang akan menikmati manfaat dari sistem jaringan di daerah seperti penanggulangan bencana, pertahanan nasional dan penelitian. Penelitian seperti perubahan lingkungan dan pembersihan lingkungan, benar-benar membutuhkan  CPU dan mungkin merupakan minat terbaik dalam setiap pemerintahan. Sebuah grid nasional juga bisa berfungsi sebagai "komputasi cadangan" yang dapat digunakan pada saat krisis (misalnya, memperhitungkan dampak dari gempa bumi). Grid nasional memiliki kelemahan mendistribusikan sumber daya.

Ø  Health Maintenance (Lembaga/Pemeliharaan Kesehatan)
Lembaga/Pemeliharaan Kesehatan benar-benar bisa merasakan keuntungan dari jaringan. Dengan menghubungkan semua komputer dan mesin (misalnya, mesin MRI dan CAT scanner) di rumah sakit. Petugas rumah sakit bisa melakukan operasi seperti komputer diagnosis canggih pada mammogram pada komputer pribadi mereka. Aplikasi hidup-kritis seperti operasi telerobotic dan pemantauan jantung bisa menggunakan algoritma canggih untuk melakukan hasil yang lebih baik. Yang disebut private grid (grid private) dapat digunakan di banyak lembaga yang menyediakan kinerja yang lebih baik. Grid private memiliki kelemahan menggabungkan perhitungan hidup-kritis dengan perhitungan yang kurang penting lainnya, juga memiliki kebutuhan untuk mengintegrasikan banyak teknologi berbiaya rendah.

Ø  Material Science Collaboratory (Ilmu Kolaboratif)
Terdiri dari orang di seluruh dunia yang butuh berbagi data penelitian, aplikasi,CPU time (waktu CPU) dan alat-alat lain untuk penelitian. Jaringan semacam ini disebut virtual dan ditandai dengan fokus pemersatu pusat, keanggotaan dinamis dan kurangnya manajemen pusat.

Ø  Computational Market Economy (Ekonomi Pasar Komputasi)
Terdiri dari sistem pengguna akhir yang terhubung dengan koneksi broadband. Grid publik dapat digunakan untuk membentuk komunitas beragam minat/kepentingan, seperti pemodelan keuangan, rendering grafis dan game online. Saat ini aplikasi seperti ini ada dalam skala besar hanya di daerah tertentu (misalnya, penelitian kehidupan di luar bumi dan penelitian bilangan prima). Sulit untuk meyakinkan orang untuk melepaskan daya komputasi, tapi di masa depan kita mungkin akan melihat lebih banyak aplikasi semacam ini.
Seperti yang kita lihat, ada lumayan banyak area berbeda dimana komputasi grid bisa digunakan. Oleh karena itu, kita berharap tidak hanya bisa melihat satu arsitektur grid, tetapi banyak macam arsitektur grid.

Apa yang Terlibat dalam Membangun Sebuah Grid?

Satu pengendali utama untuk teknik yang digunakan untuk mengimplementasikan layanangrid adalah skala. Semakin meningkatnya skala, maka semakin kompleks sistemnya. Oleh karena itu kami menerapkan skala sebagai titik awal untuk membuat perbandingan antara sistem yang berbeda yang  menawarkan layanan dasar. Kami membagi sistem menjadi 4 kelompok yang berbeda, dimulai dengan "End System” sampai dengan "Internet Systems”.

∙ End System

End System adalah sistem individu seperti komputer biasa. Sifat karakteristik untuk End System adalah skala kecil, tingkat homogenitas yang tinggi dan integrasi/terpadu. Layanan dasar yang disediakan oleh sistem operasi yang memiliki kontrol mutlak atas semua sumber daya dalam komputer. Sifat terpadu sistem ini membawanya kepada kinerja tinggi dan compiler yang efektif yang memungkinkan pengguna membuat aplikasi kinerja tinggi dengan usaha yang relatif kecil.

∙ Clusters

Cluster adalah sebuah kumpulan komputer yang terhubung dengan jaringan area lokal kecepatan tinggi. Sebuah cluster juga merupakan entitas yang homogen, mereka berbeda dari End System terutama dalam cara setiap komputer memiliki konfigurasi terpisah. Komputer dikendalikan oleh administrator tunggal, memiliki kontrol penuh atas semua sistem. Cluster memperkenalkan faktor rumit seperti peningkatan skala (banyak komputer), membuat hal-hal seperti algoritma untuk pengelolaan sumber daya dan fungsi suatu keharusan kontrol. Cluster juga telah mengurangi integrasi yang memberikan kelemahan dari penurunan kinerja di  area seperti komunikasi.

∙ Intranets

Perbedaan utama antara intranet dan cluster adalah bahwa Intranet memperkenalkan heterogenitas ke dalam sistem, hal itu juga memperlihatkan masalah dengan administrasi yang terpisah sehingga menimbulkan sistem harus menegosiasikan kebijakan yang saling bertentangan (sistem dalam Intranet diasumsikan dikelola secara terpusat). Masalah lain adalah kurangnya pengetahuan global. Mustahil bagi sistem apapun untuk memiliki pengetahuan yang akurat tentang sistem global negara yang berbeda. Sentralisasi administrasi memberikan keuntungan yang menyederhanakan keamanan dan sistem seperti Distributed Computing Environment (DCE), DCOM dan CORBA dapat berhasil diterapkan pada intranet. Program dalam sistem ini umumnya tidak menciptakan proses manual, melainkan terhubung ke "layanan" yang "membungkus" sumber daya perangkat keras.


∙ Internets

Internet  adalah sistem yang paling rumit dan ditandai dengan kurangnya kontrol terpusat, distribusi geografis yang luas dan isu-isu internasional. Dalam internet kita tidak dapat mengandalkan keberadaan scheduler umum dan karena itu harus mencari alternatif lain. Strategi umum untuk memecahkan masalah ini adalah dengan menggunakan sistem grid"scavenging (pemulungan)". Sebuah sistem yang memungkinkan, terkadang idle, komputer berkomunikasi dengan semacam scheduler global, yang disebut simpul manajemen. Node manajemen menerapkan pekerjaan untuk komputer yang sesuai dengan pembatasan pekerjaan saat ini. Teknologi baru seperti Legion dan Globus sedang dikembangkan, menganggap host seperti objek dalam mode berorientasi objek biasa.

Pendekatan Apa yang Dibutuhkan untuk Mengembangkan Komputasi Grid?

Saat ini grid dikembangkan secara independen dan sering dalam bahasa tingkat rendah seperti dalam assembler.  Ini biasanya mahal, sulit untuk beradaptasi dengan aplikasi lainnya serta sistem jaringan lain. Pengembangan jaringan harus secara standar internasional. Pengembangan juga harus dilakukan dalam modul yang lebih kecil, seperti lapisan protokol yang berbeda yang merupakan dasar Internet saat ini. Developers/pengembang dibagi menjadi tiga kelas, yaitu pengembang Grid, Tool (Alat), dan Application (Aplikasi).

·         Grid Developers (Pengembang Grid)
Grid developers mengembangkan protokol dan menghasilkan perpustakaan rutin. Tantangan di sini adalah untuk menghasilkan sebuah perpustakaan protokol yang akan bekerja dengan baik dengan banyak teknologi yang mendasari (misalnya, berbagai jenis jaringan). Perpustakaan juga harus memenuhi banyak permintaan yang berbeda dari tool developers, sehingga sulit untuk memberikan performa terbaik pada setiap permintaan berbeda , sementara pada saat yang sama mengakomodasi teknologi mendasar yang berbeda. Karena itu akan terjadi pertempuran antara umum dan kinerja. Hal ini sangat penting untuk menstandarisasi semua protokol sehingga pengembang alat tahu bagaimana mereka dapat menerapkan pekerjaan mereka.

·         Tool Developers (Pengembang Alat)
Tool developers  berkonsentrasi pada pengembangan sistem yang akan mengurus hal-hal utama yang harus ada untuk menggunakan berbagai aplikasi. Keamanan harus diperhatikan, hal-hal seperti otentikasi dan kerahasiaan harus dilaksanakan. Mereka juga mengembangkan metode untuk pembayaran, yang sangat penting misalnya dalam grid on-demand. Akhirnya mereka juga mengembangkan metode untuk menemukan dan mengatur sumber daya dan informasi. Yang termasuk komunikasi, deteksi kesalahan dan banyak hal lagi. Tool developers harus menyesuaikan protokol mereka agar sesuai dengan protokol yang dikembangkan oleh grid developers dan juga mengingat permintaan dari para application developers. Semuanya harus distandarisasi sehingga application developers dapat dengan mudah memanfaatkan kemampuan dari tool-layert. Tool developers juga harus menginformasikan para application developers yang pelaksanaannya bisa mendapatkan kinerja yang lebih tinggi atau lebih rendah.

·         Application Developers (Pengembang Aplikasi)
Application developers harus menggunakan semua metode yang mereka butuhkan dari tingkat alat untuk membuat program aplikasi khusus untuk end user (pengguna akhir). Aplikasi tersebut dimaksudkan untuk menyelesaikan masalah sulit bagi pengguna akhir. Tantangan bagi application developers adalah menemukan algoritma yang membagi tugas ke ribuan tugas yang lebih kecil yang dapat ditangani secara terpisah dan untuk membuat tugas-tugas bekerja efisien dengan tool layer (lapisan alat).

Apa yang Dibutuhkan Agar Komputasi Grid Menjadi Layanan Umum?

Seperti yang telah dibahas sebelumnya, ada banyak kemungkinan dan keuntungan besar dari memiliki infrastruktur komputasi grid. Tetapi ada juga banyak kesulitan untuk dilewati sebelum grid akan menjadi alami seperti layaknya penggunaan listrik. Ada beberapa persyaratan yang harus dipenuhi sebelum masyarakat dan perusahaan akan menggunakannya dalam skala besar. Salah satu parameter adalah bahwa layanan harus dapat diandalkan, yang berarti bahwa layanan selalu sesuai dengan yang diharapkan dan parameter fundamental sebagai keamanan, ketersediaan dan kerahasiaan.

Persyaratan kedua adalah konsistensi, yang berarti bahwa setiap lapisan harus distandarisasi. Interface standar membuatnya sederhana dan murah untuk membuat aplikasi baru.

Persyaratan terakhir untuk grid adalah bahwa grid tersebut harus murah, sementara pada saat yang sama harus memberikan performa yang tinggi.


Untuk membuat komputasi grid umum harus ada pengaruh dari politik dan organisasi yang bertindak internasional untuk standarisasi teknologi.

v  KESIMPULAN :  

Komputasi grid adalah solusi untuk semua masalah yang menawarkan cara yang nyaman untuk menghubungkan banyak perangkat (misalnya;prosesor, memori dan perangkat I/O) sehingga pengguna akhir dapat, jika diizinkan, menggunakan semua perangkat komputasi gabungan untuk jumlah waktu tertentu.

Keuntungan dasar dari komputasi grid adalah :
Ø  Perkalian dari sumber daya:  Resource pool dari CPU dan storage tersedia ketika idle.
Ø  Lebih cepat dan lebih besar: Komputasi simulasi dan penyelesaian masalah dapat berjalan lebih cepat dan mencakup domain yang lebih luas. 
Ø  Software dan aplikasi: Pool dari aplikasi dan pustaka standard, akses terhadap model dan perangkat berbeda, metodologi penelitian yang lebih baik. 
Ø  Data:  Akses terhadap sumber data global dan hasil penelitian lebih baik. 
Ø  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 dasar dari komputasi grid adalah :
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 : 

Ø  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. 
Ø  Masih sedikitnya sumber daya manusia yang kompeten dalam mengelola komputasi grid. 
Ø  Kurangnya pengetahuan yang mencukupi bagi teknisi IT maupun user non teknisi mengenai manfaat dari komputasi grid itu sendiri.