Modern Computation



1. 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 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.
Secara umum, definisi cloud computing (komputasi awan) merupakan gabungan pemanfaatan teknologi komputer (komputasi) dalam suatu jaringan dengan pengembangan berbasis internet (awan) yang mempunyai fungsi untuk menjalankan program atau aplikasi melalui komputer – komputer yang terkoneksi pada waktu yang sama, tetapi tak semua yang terkonekasi melalui internet menggunakan cloud computing.
Teknologi komputer berbasis sistem Cloud ini merupakan sebuah teknologi yang menjadikan internet sebagai pusat server untuk mengelola data dan juga aplikasi pengguna. Teknologi ini mengizinkan para pengguna untuk menjalankan program tanpa instalasi dan mengizinkan pengguna untuk mengakses data pribadi mereka melalui komputer dengan akses internet.
Manfaat Cloud Computing Serta Penerapan Dalam Kehidupan Sehari – hari
1.    Semua Data Tersimpan di Server Secara Terpusat                                       
2.    Keamanan Data
3.    Fleksibilitas dan Skalabilitas yang Tinggi

2. Grid Computing
Grid Computing atau Komputasi Grid merupakan salah satu dari tipe Komputasi Paralel, adalah penggunaan sumber daya yang melibatkan banyak komputer terpisah secara geografis namun tersambung via jalur komunikasi (termasuk Internet) untuk memecahkan persoalan komputasi skala besar. Semakin cepat jalur komunikasi terbuka, maka peluang untuk menggabungkan kinerja komputasi dari sumber-sumber komputasi yang terpisah menjadi semakin meningkat. Dengan demikian, skala komputasi terdistribusi dapat ditingkatkan secara geografis lebih jauh lagi, melintasi batas-batas domain administrasi yang ada.
Grid computing merupakan salah satu jenis dari komputasi modern. Grid computing adalah arsitektur TI baru yang menghasilkan sistem informasi perusahaan yang berbiaya rendah dan lebih adaptif terhadap dinamika bisnis. Dengan grid computing, sejumlah komponen hardware dan software yang modular dan independen akan dapat dikoneksikan dan disatukan untuk memenuhi tuntutan kebutuhan bisnis. Lebih jauh, dari sisi ekonomi, implementasi grid computing berarti membangun pusat komputasi data yang tangguh dengan struktur biaya variatif yang bias disesuaikan dengan kebutuhan.
Keuntungan Grid Computing :
Secara generik, keuntungan dasar dari penerapan komputasi Grid, yaitu:
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 apat 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

3. Virtualisasi
        Virtualisasi (virtualization) adalah mengubah sesuatu (mengkonversi) ke bentuk simulasi dari bentuk nyata yang ada. Virtualisasi membuat sebuah simulasi dari perangkat keras, sistem operasi, jaringan maupun yang lainnya. Virtualisasi digunakan sebagai sarana untuk improvisasi skalabilitas dari perangkat keras yang ada (Kaciak, 2013). Banyak perusahaan melihat TI sebagai beban. Padahal virtualisasi menawarkan ekspansi IT yang lebih tinggi, tanpa harus dipusingkan oleh pelipatan nilai investasi.
        Keuntungan virtualisasi: (1) pengurangan biaya investasi, khususnya pembelian hardware, (2) kemudahan backup dan recovery – tidak perlu melakukan instalasi dan konfigurasi ulang (cukup mengambil salinan dan melakukan restore hasil backup terakhir), (3) kemudahan dalam deployment –  dapat dikloning sebanyak mungkin dan dapat dijalankan pada mesin lain dengan mengubah sedikit konfigurasi, (4) mengurangi panas pada data center, (5) mengurangi biaya sewa ruangan, (6) kemudahan dalam pengelolaan dan perawatan, (7) standarisasi, dan (8) kemudahan replacement/upgrade. Kelemahan utama virtualisasi: pusat masalah ada pada satu tempat.
          Virtualisasi sistem operasi adalah penggunaan piranti lunak yang memungkinkan untuk dapat menjalankan beberapa sistem operasi secara bersamaan (Syarif, 2009). Dengan virtualisasi, beberapa sistem operasi dapat berjalan secara bersamaan pada satu buah komputer. Hal ini tentunya dapat mengurangi biaya yang harus dikeluarkan oleh sebuah perusahaan. Di masa depan, virtualisasi akan banyak digunakan, sebagai sarana untuk memajukan usahanya (Kaciak, 2013).
Selain itu, virtualisasi dapat diimplementasikan dalam berbagai bentuk, antara lain (Harry Sufehmi, Pengenalan Virtualisasi, 2009-06-07):
  1. Network Virtualization : VLAN, Virtual IP (untclustering), Multilink
  2. Memory Virtualization : pooling memory dari node-node di cluster
  3. Grid Computing : banyak komputer = satu
  4. Application Virtualization : Dosemu, Wine
  5. Storage Virtualization : RAID, LVM
  6. Platform Virtualization : virtual computer
Karena dalam hal ini virtualisasi mengacu pada proses penciptaan kerja mesin secara virtual layaknya perangkat sebenarnya, maka terdapat beberapa jenis virtualisasi, diantaranya:
  • Para-virtualisasi: Menjalankan sebuah perangkat lunak dalam sebuah host dengan menyesuaikan domain sendiri seolah berada dalam sistem yang berbeda.
  • Virtualisasi sebagian: Membuat sebuah lingkungan virtual  hanya untuk menjalankan program atau perangkat lunak tertentu , kondisi yang dialami adalah lingkungan dimana tidak semua aspek disimulasikan.
  • Virtualisasi penuh: Mirip dengan para-virtualisasi dimana hampir menyerupai perangkat asli dan mampu menjalankan perangkat lunak secara keseluruhan. Yang membedakan adalah tidak ditempatkan pada domain sendiri.

4. Distrubuted Computing
komputasi terdistribusi adalah bagian dari bidang ilmu komputer, yang menjelaskan tentang studi didistribusikan sistem. Sebuah sistem terdistribusi adalah sebuah sistem perangkat lunak, yang terletak pada komputer jaringan komunikasi dan mengkoordinasi dengan menggunakan pesan. Komponen dalam interaksi satu dengan lainnya bertujuan untuk mencapai tujuan yang sama.
Tujuan dan Keuntungan
Tujuan utama dari sistem komputasi terdistribusi adalah untuk menghubungkan setiap pengguna dengan sumber daya yang terpisah secara fisik ke dalam suatu sistem dengan menggunakan cara yang terkoordinasi. Dan dengan memerlukan kapasitas yang lebih besar dari kapasitas individual komponennya.
Openness merupakan properti dari sistem terdistribusi dimana setiap sub-sistem secara terus-menerus terbuka untuk berinteraksi dengan sistem yang lain. Salah satu masalah yang dihadapi dalam usaha menyatukan sumber daya yang terpisah ini antara lain adalah skalabilitas, dapat atau tidaknya sistem tersebut dikembangkan lebih jauh untuk mencakup sumber daya komputasi yang lebih banyak.

Konsekuensinya, sistem terdistribusi terbuka memberikan beberapa tantangan berikut:
·    Monotonicity.
Sesuatu yang telah dipublikasikan dalam sistem terbuka (open system) maka tidak dapat diambil kembali.
·     Pluralism.
Sub-sistem-subsistem berbeda dalam sistem open distributed dapat mempunyai informasi yang berbeda, dan mungkin menyebabkan konflik. Tidak ada pengatur kebenaran sentral dalam sistem open distributed.
·     Unbounded nondeterminism.
Subsistem-subsistem dapat naik dan turun, dan link komunikasi dapat masuk dan keluar antar sub-sistem dalam sistem open distributed. Karena itu, waktu yang diperlukan untuk menyelesaikan suatu operasi tidak dapat dibatasi dan dipastikan.
Arsitektur umun yang digunakan oleh Distributed Computing atau Komputasi Terdistribusi yaitu sebagai berikut :
1.  Client-server : klien menghubungi server untuk pengambilan data, kemudian server memformatnya dan menampilkannya ke pengguna.
2.   3-tier architecture : Kebanyakan aplikasi web adalah 3-Tier.
3.  N-tier architecture : N-Tier biasanya menunjuk ke aplikasi web yang menyalurkan lagi permintaan kepada pelayanan enterprise. Aplikasi jenis ini paling berjasa bagi kesuksesanserver aplikasi.
4.  Tightly coupled (clustered) : biasanya menunjuk kepada satu set mesin yang sangat bersatu yang menjalankan proses yang sama secara paralel, membagi tugas dalam bagian-bagian, dan kemudian mengumpulkan kembali dan menyatukannya sebagai hasil akhir.
5.  Peer-to-peer : sebuah arsitektur di mana tidak terdapat mesin khusus yang melayani suatu pelayanan tertentu atau mengatur sumber daya dalam jaringan. Dan semua kewajiban dibagi rata ke seluruh mesin, yang dikenal sebagai peer.
6.     Space based : Mengacu ke suatu infrastruktur yang membuat ilusi atau virtualisasi dari satu ruang-alamat (address-space) tunggal. Data secara transparan direplikasi sesuai dengan kebutuhan aplikasi.
7.  Mobile code : berdasarkan prinsip arsitektur mendekatkan pemrosesan ke sumber data
8. Replicated repository : Di mana repository dibuat replikanya dan disebarkan ke dalam sistem untuk membantu pemrosesan online/offline dengan syarat keterlambatan pembaharuan data dapat diterima.

5. Map Reduce


Map Reduce danNoSQL (Not Only SQL) adalah sebuah pemogramaan framework guna untuk membantu user mengembangankan sebuah data yang ukuran besar dapat terdistribusi satu sama lain. 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.
MapReduce adalah model pemrogramana rilisan Google yang ditujukan untuk memproses data berukuran raksasa secara terdistribusi dan parallel dalam cluster yang terdiri atas ribuan komputer. Dalam memproses data, MapReduce dibagi menjadi 2 proses utama, yaitu Map dan Reduce. Proses Map bertugas untuk mengumpulkan informasi dari potongan-potongan data yang terditribusi dalam tiap komputer dalam cluster (kelompok komputer yang saling terhubung). Hasilnya deserahkan kepada proses Reduce untuk diproses lebih lanjut. Hasil proses Reduce merupakan hasil akhir yang dikirim ke pengguna.

6. NoSQL
NOSQL menurut Wikipedia adalah sistem menejemen database yang berbeda dari sistem menejemen database relasional yang klasik dalam beberapa hal. NOSQL mungkin tidak membutuhkan skema tabel 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. NOSQL adalah database generasi terbaru yang mengarahkan kepada database yang tidak berelasi (non-relational), dapat disebarkan kepada siapapun (open-source) dan berskala horisontal (horizontal scale).
Johan Oskarsson dari Last.fm memperkenalkan kembali istilah NOSQL pada awal 2009 ketika ia menyelenggarakan sebuah acara untuk membahas “Distributed Open Source dan Non-relational Database”. Nama berusaha untuk label munculnya peningkatan jumlah non-relasional, didistribusikan menyimpan data, termasuk kloning open source dari Google Bigtable/MapReduce dan Amazon Dynamo.
Berbeda dengan basis data SQL dimana meskipun berbeda-beda pembuat namun cara kerja NOSQL maupun cara penggunaannya relatif sama. Contohnya sama-sama menggunakan tabel yang dihubungkan oleh relasi-relasi, manipulasi data dengan bahasa SQL dan sb. Basis data NOSQL bisa sangat berbeda satu sama lain.
Sebagian besar sistem NOSQL pada masa awal tidak berusaha untuk memberikan atomicity, konsistensi, isolasi dan daya tahan jaminan, bertentangan dengan praktik yang berlaku di antara sistem database relasional. Namun di kemudian hari, beberapa database NOSQL dengan pembaruan terkini sudah mampu mengintegrasikan database yang non-relasional ke dalam bentuk database relasional sehingga dapat mempermudah pengguna yang masih belum akrab dengan bahasa standar yang diterapkan NOSQL.
Kelebihan NoSQL di banding Relasional Database
1.  NoSQL bisa menampung data yang terstruktur, semi terstruktur dan tidak terstuktur secara efesien dalam skala besar (big data/cloud).
2.  Menggunakan OOP dalam pengaksesan atau manipulasi datanya.
3. NoSQL tidak mengenal schema tabel yang kaku dengan format data yang kaku. NoSQL sangat cocok untuk data yang tidak terstruktur, istilah singkat untuk fitur ini adalah Dynamic Schema.
4. Autosharding, istilah sederhananya, jika database noSQL di jalankandi cluster server (multiple server) maka data akan tersebar secara otomatis dan merata keseluruh server.
 




 


 

Newer Posts Older Posts
Powered By Blogger
Diberdayakan oleh Blogger.

Pages

Contact Us

Video

© Copyright Alfhan's Published.. Blogger Templates
Back To Top