Teori
Komputasi
Komputasi sebetulnya
bisa diartikan sebagai cara untuk menemukan pemecahan masalah dari
data input dengan menggunakan suatu algoritma. Hal ini ialah apa
yang disebut dengan teori komputasi, suatu sub-bidang dari ilmu komputer dan matematika.
Selama ribuan tahun, perhitungan dan komputasi umumnya dilakukan dengan
menggunakan pena dan kertas, atau kapur dan batu
tulis, atau dikerjakan secara mental, kadang-kadang dengan bantuan suatu tabel.
Namun sekarang, kebanyakan komputasi telah dilakukan dengan
menggunakan komputer.
Secara
umum iIlmu komputasi adalah bidang ilmu yang mempunyai perhatian pada
penyusunan model matematika dan teknik penyelesaian numerik serta penggunaan
komputer untuk menganalisis dan memecahkan masalah-masalah ilmu (sains).
Dalam penggunaan praktis, biasanya berupa penerapan simulasi komputer atau
berbagai bentuk komputasi lainnya untuk menyelesaikan masalah-masalah dalam
berbagai bidang keilmuan, tetapi dalam perkembangannya digunakan juga untuk
menemukan prinsip-prinsip baru yang mendasar dalam ilmu.
Bidang
ini berbeda dengan ilmu komputer (computer science), yang mengkaji komputasi,
komputer dan pemrosesan informasi. Bidang ini juga berbeda dengan teori dan
percobaan sebagai bentuk tradisional dari ilmu dan kerja keilmuan. Dalam ilmu
alam, pendekatan ilmu komputasi dapat memberikan berbagai pemahaman baru,
melalui penerapan model-model matematika dalam program komputer berdasarkan
landasan teori yang telah berkembang, untuk menyelesaikan masalah-masalah nyata
dalam ilmu tersebut.
Implementasi
Komputasi di Berbagai Bidang Ilmu Pengetahuan.
Fisika : menyelesaikan permasalahan medan magnet
dengan menggunakan komputasi fisika, dalam hal ini menentukan besarnya medan
magnet dan membandiangkan hubungan antara medan magnet dengan panjang kawat.
Kimia : algoritma dan program komputer dapat
digunakan untuk memungkinkan peramalan sifat-sifat atom dan molekul. Kajian
komputasi juga dapat dilakukan untuk menjelajahi mekanisme reaksi dan menjelaskan
pengamatan pada reaksi di laboratorium, serta memahami sifat dan perubahan pada
sistem makroskopis melalui simulasi yang berlandaskan hukum-hukum interaksi
yang ada dalam sistem.
Matematika : penerapan teknik-teknik komputasi
matematika meliputi metode numerik, scientific computing, metode elemen hingga,
metode beda hingga, scientific data mining, scientific process control dan
metode terkait lainnya untuk menyelesaikan masalah-masalah real yang berskala
besar.
Ekonomi : mempeljarai titik pertemuan antara ekonomi
dan komputasi, meliputi agent-based computational modelling, computational
econometrics dan statistika, komputasi keuangan, computational modelling of
dynamic macroeconomic systems dan pengembangan alat bantu dalam pendidikan
komputasi ekonomi.
Biologi : merupakan penerapan berupa aplikasi dari
teknologi informasi dan ilmu komputer terhadap bidang biologi molekuler.
Geografi : komputasi awan didefinisikan sebagai sebuah
model yang memungkinkan kenyamanan, akses on-demand terhadap kumpulan sumber
daya komputasi (contohnya jaringan, server, media penyimpanan, aplikasi, dan
layanan komputasi) yang konfigurasinya dapat dilakukan dengan cepat dan
disertai sedikit usaha untuk mengelola dan berhubungan dengan penyedia
layanannya.
Komputasi
Cloud
Untuk
anda yang terbiasa berada dalam dunia IT sehari-harinya dan khususnya untuk
orang yang selalu bekerja dengan menggunakan database, maka istilah Cloud
Computing ini sudah tidak asing lagi untuk anda. Karena Cloud Computing itu
sendiri pada saat ini banyak digunakan oleh perusahaan-perusahaan dalam
mengolah dan mengatur database dari perusahaan itu sendiri, karena selain lebih
efisien dalam biaya Cloud Computing ini cukup mampu untuk menampung data dalam
jumlah yang terbilang banyak dan besar.
Ide
awal dari cloud computing muncul pada tahun 1960-an, saat itu John McCarthy,
pakar komputasi MIT yang dikenal juga sebagai salah satu pionir intelejensia
buatan, menyampaikan visi bahwa "suatu hari nanti komputasi akan menjadi
infrastruktur publik--seperti listrik dan telpon".
Namun
baru di tahun 1995 lah, Larry Ellison, pendiri Oracle , memunculkan ide
"NetworkComputing" sebagai kampanye untuk menggugat dominasi
Microsoft yang saat itu merajai desktop computing dengan Windows 95-nya.
Larry
Ellison menawarkan ide bahwa sebetulnya user tidak memerlukan berbagai
software, mulai dari Sistem Operasi dan berbagai software lain, dijejalkan ke
dalam PC Desktop mereka. Hingga singkatnya pada awal abd ke 21, Kehadiran
berbagai teknik baru dalam pengembangan perangkat lunak di awal abad 21,
terutama di area pemrograman berbasis web disertai peningkatan kapasitas
jaringan internet, telah menjadikan situs-situs internet bukan lagi berisi
sekedar informasi statik. Tapi sudah mulai mengarah ke aplikasi bisnis yang
lebih kompleks.
Dan
beberapa hal yang didapat pada Cloud Computing yaitu;
1.
Agility (Kecepatan), berkembang dengan pengguna (user) untuk dengan cepat dan
murah untuk melengkapi kemajuan teknologi infrastruktur dan sumber daya.
2.
Cost (Biaya), diakui secara besar mengurangi biaya dan pengeluaran modal
dikonversikan pada pembelanjaan operasional. Ini pura-pura menurunkan halangan
untuk masuk, seperti infrastruktur secara khusus disediakan oleh pihak ketiga
dan tidak perlu dibeli untuk penggunaan sesekali maupun penggunaan komputer
secara intensif. Harga pada sebuah basis utility computing (Keperluan
Komputerisasi) yang di fine-grained (diperbaiki) dengan penggunaan berdasarkan
pilihan dan sedikit kemampuan IT diperlukan untuk implementasi dalam lingkungan
sediri.
3.
Device and location independence (alat dan kebebasan lokasi/tempat),
memungkinkan pengguna untuk mengakses suatu sistem menggunakan sebuah web
browser tanpa melihat lokasi/tempat dan alat apa yang sedang mereka gunakan
(misalnya PC, Handphone, Laptop, dan lain-lain). Seperti prasarana yang
off-site (secara khusus disediakan oleh pihak ketiga) dan diakses melalui
internet, pengguna (user) dapat terhubung dimana saja.
4.
Multi-tenancy (Sewa menyewa besar), memperbolehkan pengguna berbagi sumber dan
biaya melampaui sebuah kelompok pengguna (user) yang besar dengan
mempertimbangkan:
·
Centralization (Sentralisasi), dari infrastuktur pada lokasi dengan biaya yang
lebih murah (Seperti pada komplek perumahan Real Estate, kelistrikan, dan
lain-lain)
Peak-load
capacity (Kapasitas beban puncak) meningkat (pengguna tidak perlu seorang
engineer untuk kemungkinan kapasitas beban tertingggi).
·
Utilization and efficiency (Pemanfaatan dan efisiensi) peningkatan untuk sistem
yang sering dimanfaatkan 10% sampai 20%.
·
Reliability (Ketahanan), meningkat melalui penggunaan situs yang banyak secara
berlebihan, yang membuat Cloud Computing (Komputerisasi awan) cocok untuk
kelangsungan bisnis dan pemulihan bencana. Meskipun begitu, banyak mayoritas
layanan Cloud Computing (Komputerisasi awan) telah menderita keuntungan, dan
pengelola IT dan bisnis suatu waktu dapat sedikit melakukannya ketika mereka
terpengaruh.
·
Scalability (Skalalisasi), melalui dynamic ("on-demand") berdasarkan
permintaan ketentuan sumber daya pada sebuah fine-grained, berbasis
self-service mendekati real-time oleh pengguna tanpa memerlukan engineer untuk
beban puncak. Kinerja di monitor, secara konsisten dan arsitektur berpasangan
dengan bebas dibangun menggunakan layanan web sebagai penghubung antar sistem.
·
Security (Keamanan), secara khusus ditingkatkan berdasarkan sentralisasi data,
meningkatkan jaminan keamanan sumber data, dan lain-lain, tapi perhatian dapat
tetap dilakukan mengenai kehilangan kendali melalui kepastian sensitifitas data
dan kekuangan dari keamanan untuk tempat penyimpanan data (stored kernels).
Jaminan keamanan adalah sebaik atau lebih baik dari sistem tradisional, sebab
penyedia layanan dapat mencurahkan SDM mereka untuk menyelesaikan masalah
keamanan yang tentunya banyak pelanggan/pengguna tidak mampu melakukannya.
Penyedia layanan secara khusus membukukan akses (Log Access), tetapi mengakses
pembukuan audit (audit logs) menjadi sulit atau tidak mungkin. Lagipula,
kompleksitas dari jaminan keamanan ditingkatkan sangat besar ketika data
dibagikan malalui suatu area yang lebih luas dan / atau sejumlah alat
(devices).
·
Sustainability (ketahanan) datang ketika melalui peningkatan pemanfaatan sumber
daya (improved resource utilization), sistem lebih efisien, dan kenetralan
karbon (carbon neutrality). Meskipun begitu, komputer dan infrastruktur yang
berhubungan adalah konsumen utama energi (consumers of energy).
·
Maintenance (pemeliharaan) aplikasi Cloud Computing (Komputerisasi awan) lebih
mudah untuk dipelihara, karena mereka tidak perlu di install pada masing-masing
komputer pengguna (user). Mereka lebih mudah untuk mendukung dan diingkatkan
ketika perubahan menjangkau klien dengan secara cepat.
Pengantar
Komputasi GRID
Dalam
penggunaan komputasi grid, computer yang digunakan terpisah oleh geografis.
Selain itu didistribusikan dan terhubung oleh jaringan dalam menyelesaikan
masalah komputasi dalam skala yang besar. Berikut ini adalah beberapa hal yang
dapat digunakan untuk mengenali system komputasi grid:
- System untuk koordinat sumber daya komputasi tidak di bawah kendali pusat.
- System menggunakan standard dan protocol yang terbuka.
- System mencoba mencapai kualitas pelayanan yang canggih, yang lebih baik di atas komponen individu pelayanan komputasi grid.
Virtualisasi
Virtualisasi
merupakan teknologi yang memungkinkan pengguna untuk membuat versi virtual dari
sesuatu yang bersifat fisik, seperti system operasi, penyimpanan data atau
sumber daya jaringan. Istilah virtualisasi merupakan pemisahan sumber daya
computer yang terdiri atas jaringan, penyimpanan dan server. Virtualisasi
menyembunyikan karakteristik fisik sumber daya komputasi ke pengguna.
Sebuah
physical resources (sebuah server/aplikasi/penyimpanan) dapat terlihat seperti
beberapa resources virtual dan begitu pun sebaliknya. Berikut ini adalah
beberapa teknologi virtual : virtualisasi storage, virtualisasi komputasi dan
virtualisasi network.
Dalam
cloud computing selain ada proses virtualisasi,juga terdapat grid computing,
dimana seluruh beban proses komputasi yang ada akan didistribusikan ke berbagai
server yang saling terhubung di dalam cloud, sehingga prosesnya akan jauh lebih
ringan.
Kesimpulannya,
cloud computing merupakan gabungan antara teknologi virtualisasi dan grid
computing. Tentunya implementasi cloud computing mampu memberikan hasil yang
jauh lebih efisien dan powerfull dalam hal proses komputasi dan pengelolaan
resource IT secara terdistribusi.
Distributed
Computation Dalam Cloud Computing
Distributed
computing terkait dengan system perangkat keras dan perangkat lunak yang
memiliki lebih dari satu elemen pemrosesan atau storage element, concurrent
process atau multiple program yang berjalan di bawah pengendalian yang ketat.
Pada distributed computing, program dipecah menjadi beberapa bagian yang dijalankan secara bersamaan pada banyak computer yang berkomunikasi melalui jaringan.
Pada distributed computing, program dipecah menjadi beberapa bagian yang dijalankan secara bersamaan pada banyak computer yang berkomunikasi melalui jaringan.
Map
Reduce dan NoSQL (Not Only SQL)
Map
reduce merupakan framework pemrograman yang berfungsi untuk processing data
yang berukuran besar. Map reduce biasa digunakan untuk komputasi terdistribusi
pada banyak computer.
NoSQL
(Not Only SQL)
tidak mengenalistilah relation, selain itu NoSQL tidak menggunakan konsep
schema.
NoSQL
database
NoSQL
adalah sebuah class dari data storage system yang tidak berelasi. NoSQL tidak
memerlukan skema table, sehingga tidak menggunakan konsep relasi. NoSQL
database secara native tidak menggunakan SQL seperti yang biasa terdapat pada
relational database.