Senin, 15 April 2019

Tugas ke-2. Komputasi Awan

Cloud Computation (Komputasi Awan)


Pengertian Komputasi Awan

Komputasi Awan adalah sebuah layanan penyimpanan data secara online di storage server, atau dengan kata lain data kita akan disimpan pada database (storage) milik server online.

Sejarah Komputasi Awan

Konsep awal cloud computing muncul pertama kali pada tahun 1960 oleh John McCarthy yang berkata “komputasi suatu hari nanti akan menjadi sebuah utilitas umum” ide dari cloud computing sendiri bermula dari kebutuhan untuk membagikan data untuk semua orang di seluruh dunia. Semenjak tahun ‘60-an, cloud computing telah berkembang berdampingan dengan perkembangan Internet dan Web. Namun karena terjadi perubahan teknologi bandwidth yang cukup besar pada tahun 1990-an, maka Internet lebih dulu berkembang dibanding cloud computing. Dan kini ternyata terlihat bahwa pendorong utama cloud computing adalah karena adanya revolusi Internet.
Salah satu batu loncatan yang cukup drastis adalah dengan adanya Salesforce.com di tahun 1999, yang merupakan pencetus pertama aplikasi perusahaan dijalankan melalui Internet. Perkembangan berikutnya adalah adanya Amazon Web Services di tahun 2006, di mana dengan teknologi Elastic Compute Cloud (EC2), terdapat situs layanan web yang di komersialkan yang memungkinkan perusahaan kecil dan individu untuk menyewa komputer atau server, agar dapat menjalankan aplikasi komputer mereka.

Karakteristik Komputasi Awan

Untuk memudahkan semua definisi yang ada, maka dapat diintisarikan bahwa cloud computing ideal adalah layanan yang memiliki 5 karakteristik berikut ini :
1.      On-demand self-services
Sebuah layanan yang terdapat di cloud computing harus dapat dimanfaatkan oleh pengguna melalui  mekanisme swalayan dan langsung tersedia pada saat dibutuhkan.
2.      Broad network access
Sebuah layanan yang terdapat di cloud computing harus dapat diakses dari mana saja, kapan saja, dengan alat apa pun, asalkan kita terhubung ke jaringan layanan.
3.        Resource pooling
Sebuah layanan yang terdapat di cloud computing harus tersedia secara terpusat dan dapat membagi sumber daya secara efisien.
4.     Rapid elasticity
Sebuah layanan yang terdapat di cloud computing harus dapat menaikkan (atau menurunkan) kapasitas sesuai kebutuhan.
5.      Measured service
Sebuah layanan yang terdapat di cloud computing harus disediakan secara terukur, karena nantinya akan digunakan dalam proses pembayaran. Harap diingat bahwa untuk suatu layanan cloud computing dibayar sesuai penggunaan, sehingga harus terukur dengan baik.

Sistem Kerja Komputasi Awan

Ketika berbicara tentang sistem cloud computing, sistem ini terbagi menjadi dua bagian: ujung depan dan ujung belakang. Sistem tersebut terhubung satu sama lain melalui jaringan, biasanya adalah Internet. Ujung depan adalah sisi pengguna komputer (user), atau klien (client), melihat. Bagian belakang adalah “cloud” bagian dari sistem. Jenis layanan yang disediakan cloud computing yaitu :
  1. Infrastructure-as-a-Service (IaaS)
 Hal ini meliputi seluruh penyediaan infratruktur IT seperti fasilitas datacenter, storageservergrid untuk virtualized server, dan seluruh komponennetworking yang ada didalam sistem cloud yang dikelola pihak ketiga
2. Platform-as-a-Service  (PaaS)
Merupakan sebuah development platform berbasis web, dimana Anda bisa menggunakannya untuk membuat sebuah aplikasi web. PaaS akan membuka kesempatan bagi para developer dari berbagai tingkat pengetahuan, untuk mengembangkan aplikasi secara cepat dan murah.

3. Software-as-a-Service (SaaS)
 Merupakan sebuah software atau aplikasi web-based interface, yang dideploy di sisi pihak ketiga, sehingga dapat diakses melalui jaringan oleh setiap pelanggan.

Tipe-tipe Komputasi Awan

·         Private cloud
infrastruktur layanan cloud yang dioperasikan hanya untuk sebuahenterprise/organisasi/perusahaaan tertentu, pelanggannya biasanya perusahaan dengan skala besar, infrastruktur dapat dikelola oleh perusahaan itu sendiri atau oleh pihak ketiga dan lokasi bisa on-site atau off-site.
·         Public cloud
layanan yang dibuat tersedia untuk masyarakat umum dengan cara pay-as-you-go. Pelanggan, baik itu merupakan pengguna individu maupun perusahaan mengakses layanan yang disediakan oleh penyedia pihak ketiga melalui internet, dimana sumber daya komputasi seperti aplikasi, sistem penyimpanan, dan jaringan yang diakses berbagi dengan banyak pelanggan yang berbeda.

Aspek keamanan dan privasi Komputasi Awan

Didalam suatu perusahaan/organisasi untuk mendapatkan sebuah keuntungan dari komputasi awan, ada beberapa aspek yang berkaitan dengan Keamanan dan Privasi di bawah ini yang harus diperhatikan :
·           Manajemen resiko dan ketaatan merupakan organisasi yang memulai mengadopsi awan tetap harus bertanggung jawab untuk aspek manajemen keamanan, resiko, dan ketaatan terhadap aturan yang berlaku di industri terkait.
·          Manajemen akses dan identitas merupakan suatu identitas bisa didapat melalui beberapa penyedia jasa awan, dan harus bersifat interoperabel antar organisasi yang berbeda, penyedia awan yang berbeda, dan berlandaskan proses yang kuat. 
·           Integritas layanan merupakan suatu layanan yang berbasis awan harus dibangun dengan landasan keamanan yang kuat, dan proses-proses operasionalnya juga harus diintegrasikan dengan manajemen keamanan di organisasi tersebut.
·           Integritas klien merupakan sebuah layanan awan yang digunakan di sisi klien harus memperhatikan aspek keamanan, ketaatan, dan integritas di sisi klien.
·            Proteksi informasi merupakan sebuah layanan awan membutuhkan proses yang andal untuk melindungi informasi sebelum, selama, dan setelah transaksi.

Kelebihan dan kelemahan Komputasi Awan

a.       Kelebihan : 
Suatu teknologi yang baru pasti mengundang pro dan kontra, begitu juga dengan cloud computing. Maka dari itu  tidak lepas dari kelebihan dan kekurangan yang ada dari sistem teknologi baru tersebut, berikut kelebihan dari cloud computing:
·         Fleksibilitas hampir sama seperti contoh di atas, data yg kita perlukan tidak harus kita simpan di dalam hardisk atau storage computer kita.
·         Mengubah CAPEX menjadi OPEX, CAPEX itu sendiri adalah Capital Expenditure (pengeluara modal), sedangkan OPEX itu sendiri ialahOperational Expenditure (pengeluaran modal). Seperti kelebihan sebelumnya, ini masih seputar masalah keuangan. Jadi dengan menggunakan teknologicloud computer ini, kita tidak harus melakukan pengeluaran modal, sebaliknya kita hanya melakukan pengeluaran operational.
·         Lentur dan mudah dikembangkan Sesuai dengan salah 1 karakter cloud computing yaitu rapid lasticity, maka ini juga merupakan salah 1 kelebihan cloud computing.
·         Fokus pada bisnis bukan pada TI. Dengan mempercayakan semua pengelolaan seputar IT pada cloud service provider, maka kita akan lebih fokus pada bisnis kita bukan pada pengelolaan IT nya.
Dengan banyaknya kelebihan di atas Cloud computing juga memiliki kekurangan yaitu ketergantungan akan koneksi Internet. Sehingga membutuhkan koneksi dengan kecepatan yang tinggi agar dapat memanfaatkan (mengambil) fileyang berukuran besar. 
b.      Kelemahan
Komputer tersebut akan menjadi lambat atau tidak bisa dipakai sama sekali jika internet bermasalah atau kelebihan beban. Dan juga perusahaan yang menyewa layanan dari cloud computing tidak punya akses langsung ke sumber daya. Jadi, semua akan tergantung dari kondisi vendor/penyedia layanan cloud computing. Jika server vendor tersebut rusak atau punya layanan backup yang buruk, maka perusahaan akan mengalami kerugian besar.


Referensi :

Sabtu, 13 April 2019

Tugas ke-2. Komputasi Paralel


Parallel Computation (Komputasi Paralel)

Pengertian Komputasi Paralel

Komputasi paralel merupakan suatu teknik yang berfungsi melakukan komputasi secara bersamaan dengan memanfaatkan sejumlah komputer secara bersamaan. Ini umumnya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar (di industri keuangan, bioinformatika, dll) ataupun karena tuntutan proses komputasi yang banyak.

Tujuan Komputasi Paralel

Didalam Pengunaan Komputasi Parlel ini mempunyai Tujuan utama  yait untuk mempersingkat waktu eksekusi  program yang menggunakan komputasi serial. Inilah Beberapa alasan lain yang menjadikan suatu  program menggunakan komputasi paralel antara lain :
1.  Untuk memecahkan suatu permasalahan yang besar, terkadang ada beberapa sumber daya komputasi yang  sekarang belum cukup mampu untuk mendukung penyelesaian terhadap permasalahan tersebut.
2.     Adanya sumber daya non-lokal yang dapat digunakan melalui jaringan atau internet
3.    Penghematan biaya pengadaan perangkat keras, dengan menggunakan beberapa mesin yang murah sebagai alternatif penggunaan satu mesin yang bagus tapi mahal, walaupun menggunakan n buah prosesor
4.  Adanya keterbatasan kapasitas memori pada mesin untuk komputasi serial, inilah salah satu penghambat untuk pengguna.


Hambatan Komputasi Paralel

Didalam Penggunaan komputasi parallel yang digunakan sebagai solusi untuk mempersingkat waktu yang dibutuhkan untuk eksekusi program mempunyai beberapa hambatan. Hambatan-hambatan tersebut antara lain adalah :
1.      Hukum Amdahl : sebuah peningkatan percepatan waktu yang akan mengeksekusi sebuah program dengan menggunakan komputasi paralel akan menjadi linear dan tidak akan pernah mencapai kesempurnaan karena selalu ada bagian program yang harus dieksekusi secara serial. Karena melipatgandakan kemampuan proses sebuah komputer dan mengurangi separuh dari waktu proses yang diperlukan untuk menyelesaikan sebuah masalah
2.      Hambatan yang diakibatkan karena beban jaringan : didalam eksekusi program secara parallel ini, prosesor yang berada di mesin yang berbeda memerlukan pengiriman dan  penerimaan data (atau instruksi) melalui jaringan. Untuk sebuah  program yang dibagi menjadi task-task yang sering membutuhkan sinkronisasi, network latency menjadi masalah utama. Permasalahan ini muncul karena ketika suatu task membutuhkan data dari task yang lain, state ini dikirimkan melalui jaringan di mana kecepatan transfer data kurang dari kecepatan prosesor yang mengeksekusi instruksi task   Hal ini adalah salah satu yang menyebabkan task tersebut harus menunggu sampai data sampai terlebih dahulu, sebelum mengeksekusi instruksi selanjutnya. Jumlah waktu yang dibutuhkan untuk berkomunikasi melalui jaringan antar dua titik adalah jumlah dari startup time, per-hop time, dan per-word transfer time.
3.      Sebuah Hambatan yang terkait dengan beban waktu untuk inisiasi task, terminasi task, dan sinkronisasi.


Arsitektur Komputasi Paralel


Taksonomi Flynn membagi arsitektur komputer paralel dengan menggunakan sudut pandang instruksi dan data, sehingga terdapat empat jenis arsitektur komputer paralel :
1.      SISD (Single Instruction, Single Data) : arsitektur ini adalah arsitektur yang mempunyai sebuah prosesor tunggal, yang bukan paralel.

2.      SIMD (Single Instruction, Multiple Data) : pada arsitektur ini, eksekusi sebuah instruksi akan dilakukan secara bersamaan oleh beberapa prosesor, di mana suatu prosesor dapat menggunakan data yang berbeda dengan prosesor lain.  alur instruksi yang sama dijalankan terhadap banyak alur data yang berbeda. Alur instruksi di sini kalau tidak salah maksudnya ya program komputer itu. trus datapath itu paling ya inputnya, jadi inputnya lain-lain tapi program yang digunakan sama.


3.      MISD (Multiple Instruction, Single Data) : pada arsitektur ini, , alur instruksinya banyak, alur datanya juga banyak, tapi masing-masing bisa berinteraksi. Arsitektur ini kurang populer karena hanya sedikit permasalahan yang membutuhkan solusi dengan menggunakan karakteristik arsitektur ini.

4.      MIMD (Multiple Instruction, Multiple Data) : pada arsitektur ini, alur instruksinya banyak tapi beroperasi pada data yang sama. Selain itu, arsitektur ini dapat melakukan pekerjaan sesuai dengan karakteristik dari ketiga asitektur sebelumnya.


Arsitektur Memori pada Komputasi Paralel


Pada umumnya, ada dua buah arsitektur memori pada komputer paralel, yaitu shared memory dan distributed memory
1.      Shared memory : arsitektur ini menyediakan global addressing sehingga berbagai prosesor mempunyai cara pengaksesan memori yang seragam. Setiap perubahan pada suatu lokasi memori oleh suatu prosesor akan selalu terlihat oleh prosesor lain. Kelebihan dari arsitektur ini antara lain adalah pengaksesan memori yang user friendly dan performansi yang baik dalam penggunaan data bersama antar task. Sedangkan kekurangannya antara lain adalah kurangnya skalabilitas ketika terjadi penambahan prosesor, di mana akan terjadi peningkatan traffic antara prosesor ke shared memory dan antara cache coherent system dengan memori sebenarnya.
·         Berdasarkan frekuensi akses, ada dua jenis shared memory :Uniform Memory Access (UMA) : setiap prosesor memiliki hak pengaksesan yang seragam dengan prosesor lain
·         Non Uniform Memory Access (NUMA) : tidak semua prosesor memiliki hak yang sama dalam mengakses memori

2.      Distributed memory : arsitektur ini mempunyai karakteristik di mana setiap prosesor memiliki memorinya masing-masing, sehingga eksekusi instruksi dapat berjalan secara independen antara satu prosesor dengan yang lain. Prosesor akan menggunakan jaringan ketika membutuhkan akses ke memori non lokal. Akses ini sepenuhnya menjadi tanggung jawab  penulis program. Kelebihan dari arsitektur ini adalah terjaganya skalabilitas ketika terjadi  penambahan prosesor. Sedangkan kekurangannya adalah penulis program harus berurusan dengan detail komunikasi data antara prosesor dan memori non lokal.


Referensi :

Senin, 18 Maret 2019

Tugas ke-1. BIG DATA

2. BIG DATA

A.   Pengertian Analisis Big Data
Big Data merupakan istilah untuk menggambarkan data set yang besar baik StructuredSemi-Structured maupun Unstructured data. Data terdiri dari fakta-fakta dan angka-angka yang relative tidak berarti bagi pengguna atau fakta mentah yang belum diolah. Definisi big data bisa dijelaskan dalam 3V :

1.                  Volume adalah  data set yang disimpan dalam jumlah yang besar
2.                  Velocity adalah ada kebutuhan mengakses data set besar tersebut dengan cepat
3.                  Variety adalah format data yang semakin bervariasi saat ini.

Metode Atau Algoritma

Didalam BIG DATA terdapat dua teknik utama untuk menganalisisnya yaitu : the store and analyze approach, dan the analyze and store approach.

·         The Store and Analyze Approach

The store and analyze approach adalah metode yang mengintegrasikan sumber data ke dalam consolidated data store sebelum data dianalisa. Pendekatan ini digunakan oleh sistem data warehouse tradisional untuk menghasilkan data analytics. Pada data warehousing system, consolidated data store biasanya berupa enterprise data warehouse atau data mart yang dikelola oleh relational DBMS atau multidimensional DBMS.

·         The Analyze and Store Approach

Analyze and Store Approach adalah metode menganalisis data yang mengalir pada proses bisnis, yang ada di antara network dan systems. Hasil analisis kemudian dapat dipublikasikan pada interactive dashboards dan/atau dipublikasikan ke dalam data store (seperti data warehouse) untuk diakses pengguna, menghasilkan historical reporting dan analisis tambahan lainnya. Pendekatan ini dapat juga digunakan untuk menyaring dan mengagregasi big data sebelum dimasukan ke dalam data warehouse.


B.   Studi Kasus

Bank Mandiri adalah perusahaan yang bergerak di bidang perbankan, perusahaan ini salah satunya adalah melayani pemesanan barang antar Wilayah, Area dan Cabang dari seluruh Indonesia. Dalam proses pelaporannya, staf gudang masih menggunakan data yang di sediakan dari system yang sudah ada, namun data yang di sediakan masih dalam bentuk laporan data biasa yang di hasilkan dari OLTP dan data yang bersifat tidak dapat di ubah, sehingga laporan yang di berikan kepada management tingkat atas sebagai bahan analisa dalam pengabilan keputusan kurang informatif. Perusahaan akan mengembangkan aplikasi yang dapat mengolah dan melakukan pencarian pola data sebagai bahan pelaporan, implementasi teknologi big data akan sangat membantu proses pengelolaan data pada aplikasi tersebut, dikarenakan data yang di kelola dalam kurun waktu yang cepat akan terus bertambah, sehingga pengelolaan data menggunakan teknologi big data menjadi solusi untuk dapat mengolah data dalam melakukan pencarian pattern pada data gudang Bank Mandiri. Aplikasi yang akan di kembangkan tersebut akan menyajikan informasi-informasi yang di butuhkan seperti pattern barang yang paling banyak di pesan dan pattern user yang paling banyak melakukan pemesanan, sehingga pattern pada aplikasi tersebut akan membantu staff dalam melakukan pelaporan dan Manegement tingkat atas dalam melakukan analisa dalam pengambilan keputusan.


Referensi :


Tugas ke-2. Komputasi Awan

Cloud Computation (Komputasi Awan) Pengertian Komputasi Awan Komputasi Awan adalah sebuah layanan penyimpanan data secara  onlin...