Selasa, 19 April 2016

file sistem terdistribusi

Pengenalan
File Sistem Terdistribusi ( Distributed File System , disingkat DFS -  penulis akan menggunakan kata ini selanjutnya) adalah file sistem yang mendukung sharing files dan resources dalam bentuk penyimpanan persistent di sebuah network. File server pertama kali didevelop pada tahun 1970 dan Sun NFS (Network File System) menjadi DFS pertama yang banyak digunakan setelah awal pemunculannya di tahun 1985. DFS yang terkenal selain NFS adalah AFS (Andrew File System) dan CIFS (Common Internet File System).
Sebuah file server menyediakan file service ke client. Dari sisi client terdapat interface untuk file service dalam hal operasi primitif file, seperti membuat file (create), menghapus (delete) dan read / write file. Komponen perangkat keras utama yang mana file server mengontrolnya adalah sebuah local storage (umumnya disk drive / HDD). Ditempat itulah file-file tersimpan dan dari tempat tersebut request client meretrive file. Pada DFS client, server dan juga perangkat penyimpanan merupakan mesin terpisah dalam sebuah lingkungan terdistribusi (Intranet). Jadi, aktifitas layanan (service) dibawa melewati jaringan (network), jadi selain sistem memiliki satu data terpusat, sistem memiliki beberapa perangkat penyimpanan independent. Konfigurasi konkret dan juga implementasi dari sebuah DFS dapat beragam bentuknya. Dalam beberapa konfigurasi, server berjalan sebagai dedicated machine (layanan terpusat) atau juga menjadi server dan client. DFS dapat diimplementasikan sebagai bagian dari Sistem Operasi Terdistribusi dengan sebuah layer software yang tugasnya mengatur komunikasi antara sistem operasi konvensional dan file system. 
Parameter untuk mancapai DFS adalah transparansi. Secara ideal, DFS terlihat sebagai bentuk file system terpusat, faktor keseragaman (multiplicity) dan penyebaran server serta perangkat penyimpanan tidak terlihat oleh user. Oleh karena itu interface client yang digunakan program tidak akan membedakan antara file local dan remote. Semuanya tergantung dari implementator DFS untuk mengalokasikan file-file dan menyusun transportasi data. Kelebihan lain dari DFS adalah peningkatan performa. Yang menjadi tolak ukur pengukuran performa DFS adalah waktu yang dibutuhkan untuk merespon request layanan.
Saling berbagi media penyimpanan informasi sudah menjadi sesuatu hal yang penting dalam resource sharing. Desain service file terdistribusi yang baik adalah menyediakan akses distribusi file dengan performansi dan realibilitas yang sama atau lebih baik dari penyimpanan file-file dalam disk local dalam bentuk transparent.
Desain skala besar dari proses sistem penyimpanan baca tulis file pada wide area menimbulkan masalah pada load balancing, reliabilitas, avaibility dan security. File sistem yang terdistribusi mengemulasikan fungsionalitas dari file sistem tak terdistribusi untuk program client yang berjalan pada komputer remote. File sistem terdistribusi juga menyediakan hal-hal pokok untuk pengorganisasian komputer yang berbasiskan jaringan intranet. 


Pengenalan File Service File
 Service adalah suatu perincian atau pelayanan dari file system yang ditawarka pada komputer client. Suatu file server adalah implementasi dari file service dan berjalan pada satu atau lebih mesin. File itu sendiri berisi dari nama, data dan atribut file seperti kepemilikan file, ukuran, waktu pembuatan file dan hak akses file. File sistem merupakan mekanisme penyimpanan on-line serta untuk akses, baik data maupun program yang berada dalam sistem operasi.
Karakteristik dari File System
File Sistem adalah bertanggung jawab untuk pengorganisasian, penyimpanan, pencarian keterangan, penamaan, sharing atau pembagian dan protection atau perlindungan dari file-file. File berisi dari dua bagian penting yaitu data dan atribut. File sistem didesain untuk menyimpan dan mengatur banyak dan besar file dengan fasilitas untuk membuat, memberi nama dan menghapus file. File system juga bertanggung jawab untuk pengontrolan dari akses file, akses terbatas ke file oleh user yang berhak dan tipe-tipe dari akses yang diminta. –
Operasi pada file (=data + atribut) 
·         Create / delete 
·         Query / Modifikasi Atribut 
·         Open / Close
·         Read / Write 
·         Akses Kontrol
 Organisasi penyimpanan
·         Struktur direktori (hirarki, pathname) 
·         Metadata (pengaturan informasi file) : atribut file, informasi struktur direktori, dll 
Atribut File
 File adalah kumpulan informasi berkait yang diberi nama dan direkam pada penyimpanan sekunder. Atribut file terdir dari :
1.      Nama
 Merupakan satu-satunya informasi yang tetap dalam bentuk yang bisa dibaca oleh manusia (human readable form)
2.      Type
Dibutuhkan untuk sistem yang mendukung beberapa tipe berbeda
3.      Lokasi
Merupakan pointer atau penunjuk ke device dan lokasi file pada device tersebut berada
4.      Ukuran (Size)
Ukuran file pada saat itu, baik dalam byte, huruf ataupun blok
5.       Proteksi
 Informasi mengenai kontrol akses, misalnya siapa saja yang boleh membaca, menulis dan mengeksekusi file
6.       Waktu, tanggal dan identifikasi pengguna Informasi ini biasanya disimpan untuk :
·         Pembuatan file
·         Modifikasi terakhir yang dilakukan pada file
·         Penggunaan terakhir file

Atribute file
·         Panjang File
·         Creation Timestamp
·         Read Timestamp
·         Write Timestamp
·         Attribute Timestamp
·         Reference Count
·         Owner
·         Tipe File
·         Daftar Akses Kontrol 
Struktur File System
·         Modul direktori : menghubungkan nama file dengan ID file
·         Modul File : menghubungkan ID dengan file tertentu 
·         Modul Akses Kontrol : memeriksa permission utuk operasi yang diminta
·         Modul Akses File : read / write data file atau atribut
·         Modul Blok : akses dan alokasi blok disk
·         Modul Perangkat : disk I/O dan buffering 
Komponen File service
1.      Komponen-komponen file service adalah terdiri dari : 
2.      File Service Pengoperasian dari masing-masing file.
3.      Directory Service  Management atau pengaturan direktori 
4.      Naming Service
Ø  Location Independence : 
·         File dapat dipindahkan tanpa penggantian nama
Ø  Hal yang umum untuk penamaan file dan directori :
·         Mesin + nama path e.g / machine / path atau machine : path 
·         Mounting File sistem secara remote kedalam hirarki local file. 
·         Single name space yang sama pada semua mesin. –
Ø  Dua level penamaan :
·         Nama simbolik yang dilihat user dan nama binary yang dilihat oleh sistem.     
Kebutuhan File System Terdistribusi
 Transparansi (Client tidak menyadari adanya lingkungan terdistribusi)
·         Akses Transparan 
·         Lokasi Transparan
·         Mobilitas Transparan
·         Performa Transparan
·         Scaling Transparan
·         Concurrent File Update 
·         Replikasi File 
·         Heterogenitas
·         Toleransi Kesalahan 
·         Konsistensi 
·         Keamanan
·         Efisiensi 
Kebutuhan File System Terdistribusi
1.      Transparency
Keseimbangan antara flesibilitas dan skalabilitas terhadap kompleksitas dan performansi dalam desainnya.
2.      Concurrent File Updates
Perbaruan file serentak bersamaan antara file server dan client. Kebanyakan arah sistem mengikuti standar UNIX dalam memberikan pelayanan advisory atau mendatory file atau record file level locking.
3.      File Replication
Replikasi dapat untuk share load, untuk mempertinggi fault tolerance, dan untuk mempertinggi scalability. Kebanyakan sistem yang ada dapat melayani caching dengan replication terbatas. Sebagian dapat melayani full replication.
4.      Hardware dan Operating Systems
Heterogenitas atau kesamaan adalah kebutuhan yang sangat penting dalam melayani keterbukaan.
5.      Fault Tolerance
Service harus terus menerus beroperasi walaupun terjadi kesalahan atau error pada client ataupun server
6.      Consistency
7.      Security
Semua sistem melayani mekanisme akses kontrol berbasiskan daftar akses kontrol (access control lists)
8.      Efficiency
 Sistem harus dapat melayani perbandingan performance apakah lebih baik atau tidak. 

Opsi Desain dalam File Service 
ü  Stateful
ü  Stateless       

Sumber

http://iwan.staff.gunadarma.ac.d/Downloads/files/22156/5_File+Service.pdf

Kamis, 07 April 2016

Pengantar Komputasi Cloud bagian 2



a)      Distributed Computation dalam Cloud Computing
Komputasi terdistribusi merupakan bidang ilmu komputer yang mempelajari sistem terdistribusi. Sebuah sistem terdistribusi terdiri dari beberapa komputer otonom yang berkomunikasi melalui jaringan komputer. Komputer yang saling berinteraksi untuk mencapai tujuan bersama. Suatu program komputer yang berjalan dalam sistem terdistribusi disebut program didistribusikan, dan didistribusikan pemrograman adalah proses menulis program tersebut. Distributed computing juga mengacu pada penggunaan sistem terdistribusi untuk memecahkan masalah komputasi. Dalam distributed computing, masalah dibagi menjadi banyak tugas, masing-masing yang diselesaikan oleh satu komputer. Komputasi terdistribusi yang di maksud di sini adalah suatu teknik yang dapat digunakan untuk menyelesaikan berbagai masalah dalam cloud computing.  
b)      Map Reduce dan Non SQL (Not Only SQL)
MapReduce yang berkaitan dengan cloud computing ini merupakan sebuah model pemrograman untuk melakukan pemrosesan data (biasa dipakai di komputer terdistribusi). Map-Reduce merupakan sebuah konsep teknis yang sangat penting di dalam teknologi cloud seperti dapat membantu programmer membuat aplikasi cloud computing. Salah satu contoh penerapan nyata map-reduce ini dalam suatu produk adalah yang dilakukan Google. Dengan inspirasi dari functional programming map dan reduce Google bisa menghasilkan filesystem distributed yang sangat scalable, Google Big Table. Dan juga terinspirasi dari Google, pada ranah open source terlihat percepatan pengembangan framework lainnya yang juga bersifat terdistribusi dan menggunakan konsep yang sama, project open source tersebut bernama Apache Hadoop.
Non SQL atau singkatan dari Not Only SQL ini adalah tipe database yang sangat jauh berbeda dengan konsep RDBMS ataupun ODBMS. Perbedaan utamanya sendiri yaitu karena tidak mengenal istilah relation dan tidak menggunakan konsep schema. Dalam Non SQL, setiap tabel berdiri sendiri tanpa tergantung dengan tabel lainnya. Non SQL adalah istilah untuk menyatakan berbagai hal yang didalamnya termasuk database sederhana yang berisikan key dan value seperti Memcache, ataupun yang lebih canggih yaitu non-database relational seperti MongoDBCassandraCouchDB, dan yang lainnya.
Sumber :

Pengantar Komputasi Cloud





a)      Pendahuluan
Perkembangan teknologi di era ini sudah semakin maju dengan adanya teknologi Cloud Computing, dalam Cloud Computing ini kita dapat menggunakan konsep - konsep seperti social networking, open, share, colaborations, mobile, easy maintenance, one click, terdistribusi, scalability, concurency, dan transparan. Cloud Computing hadir dengan memudahkan akses data dari mana saja dan kapan saja, karena dengan memanfaatkan internet dan menggunakan perangkat fixed atau mobile device menggunakan internet cloud sebagai tempat penyimpanan data, aplikasi dan lainya.
Cloud Computing atau bisa disebut juga Komputasi awan adalah suatu penggabungan antara teknologi komputer yang telah berkembang dengan basis internet yang juga telah berkembang. Mengapa disebut sebagai komputasi awan karena komputasi kita anggap sebagai komputer dan internet sebagai awan dimana bekerja tidak kelihatan oleh mata manusia. Jadi pada intinya manusia sebagai user memanfaatkan teknologi computer dengan menjalankan aplikasi yang tidak berada dicomputer yang digunakannya atau tidak ada file-file yang ada dikomputer kita langsung, namun file - file itu berada di computer lain yang dihubungkan dengan internet.
Kelebihan cloud computing :
Ø  Keuntungan bagi para pelaku bisnis adalah minimalisasi biaya investasi infrastruktur publik sehingga bisnis bisa lebih terfokus pada aspek fungsionalitasnya
Ø  Bagi application developer, layanan PaaS memungkinkan pengembangan dan implementasi aplikasi dengan cepat sehingga meningkatkan produktivitas
Ø  Bagi para praktisi yang bergerak di industri TI, hal ini berarti terbukanya pasar baru bagi industri jasa pengembangan teknologi informasi
Ø  Bagi pebisnis di bidang infrastruktur, hal ini merupakan peluang yang besar karena dengan meningkatnya penggunaan layanan SaaS ini akan meningkatkan penggunaaan bandwidth internet
Ø  Integrasi aplikasi dengan berbagai perangkat
Kekurangan cloud computing :
ü  Service level, artinya kemungkinan service performance yang kurang konsisten dari provider. Inkonsistensi cloud provider ini meliputi, data protection dan data recovery
ü  Privacy, yang berarti adanya resiko data user akan diakses oleh orang lain karena hosting dilakukan secara bersama-sama
ü  Compliance, yang mengacu pada resiko adanya penyimpangan level compliance dari provider terhadap regulasi yang diterapkan olehuser
ü  Data ownership mengacu pada resiko kehilangan kepemilikan data begitu data disimpan dalam cloud
ü  Data mobility, yang mengacu pada kemungkinan share data antarcloud service dan cara memperoleh kembali data jika suatu saat usermelakukan proses terminasi terhadap layanan cloud Computing

b)      Pengantar Komputasi Grid
Komputasi Grid sebenarnya merupakan sebuah aplikasi pengembangan dari jaringan komputer (network). Hanya saja, tidak seperti jaringan komputer konvensional yang berfokus pada komunikasi antar piranti (device), aplikasi pada grid computing dirancang untuk memanfaatkan sumber daya pada terminal dalam jaringannya. Grid Computing biasanya diterapkan untuk menjalankan sebuah fungsi yang terlalu kompleks atau terlalu intensif untuk dikerjakan oleh satu sistem tunggal. Seperti halnya pengguna internet yang mengakses berbagai situs web dan menggunakan berbagai protokol seakan - akan dalam sebuah sistem yang berdiri sendiri, maka pengguna aplikasi Grid Computing seolah - olah akan menggunakan sebuah virtual komputer dengan kapasitas pemrosesan data yang sangat besar. 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.

c)       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. Contoh aplikasi nya yang sering mahasiswa gunakan sehari hari adalah google docs.

Pengantar Quantum Computation


A) Pendahuluan
Sejak tahun 1990, teori kuantum mulai berkembang dengan presentasi oleh Max Planck ke himpunan Fisika Jerman. Max Planck memperkenalkan ide bahwa energi ada dalam uni individu ('kuanta'). Perkembangan selanjutnya yang dilakukan oleh sejumlah ilmuwan selama tiga puluh tahun berikutnya menyebabkan pemahaman modern tentang teori kuantum.
Komputasi kuantum merupakan bidang studi yang memfokuskan pada bidang teknologi komputer yang berkembang atas dasar prinsip-prinsip dasar teori kuantum, misalnya superposisi dan keterkaitan untuk melakukan operasi data. Teori kuantum menjelaskan sifat dan perilaku energi dan materi pada kuantum. Prinsip dasar komputer kuantum adalah sifat kuantum dari partikel dapat digunakan untuk mewakili data dan struktur data, serta mekanika kuantum dapat digunakan untuk melakukan operasi dengan data ini. Untuk mengembangkan komputer dengan sistem kuantum diperlukan suatu logika yang baru yang sesuai dengan prinsip kuantum.. 
B) Entanglement
Para ahli fisika dari University of Maryland telah satu langkah lebih dekat ke komputer kuantum dengan mendemonstrasikan eksistensi entanglement antara dua gurdi kuantum, masing-masing diciptakan dengan tipe sirkuit padat yang dikenal sebagai persimpangan Josephson. Research (pusat penelitian milik Jurusan Fisika University of Maryland) mengatakan penemuan mereka adalah yang pertama mengindikasikan keberhasilan penciptaan entanglement antara qubit persimpangan Josephson. Entanglement adalah efek mekanik kuantum yang mengaburkan jarak antara partikel individual sehingga sulit menggambarkan partikel tersebut terpisah meski Anda berusaha memindahkan mereka. Jadi entanglement adalah esensi komputasi kuantum karena ini adalah jalinan kualitas yang berhubungan dengan lebih banyak informasi dalam bit kuantum dibanding dengan bit komputing klasik. Temuan terbaru ini mendekatkan jalan menuju komputer kuantum dan mengindikasikan bahwa persimpangan Josephson pada akhirnya dapat digunakan untuk membangun komputer supercanggih
C) Pengoperasian Data Qubit 
            Qubit merupakan kuantum bit , mitra dalam komputasi kuantum dengan digit biner atau bit dari komputasi klasik. Sama seperti sedikit adalah unit dasar informasi dalam komputer klasik, qubit adalah unit dasar informasi dalam komputer kuantum . Dalam komputer kuantum, sejumlah partikel elemental seperti elektron atau foton dapat digunakan (dalam praktek, keberhasilan juga telah dicapai dengan ion), baik dengan biaya mereka atau polarisasi bertindak sebagai representasi dari 0 dan / atau 1. Setiap partikel-partikel ini dikenal sebagai qubit, sifat dan perilaku partikel-partikel ini (seperti yang diungkapkan dalam teori kuantum ) membentuk dasar dari komputasi kuantum. Dua aspek yang paling relevan fisika kuantum adalah prinsip superposisi dan Entanglement. Bit digambarkan oleh statusnya, 0 atau 1. Begitu pula, qubit digambarkan oleh status quantumnya. Dua status quantum potensial untuk qubit ekuivalen dengan 0 dan 1 bit klasik. Namun dalam mekanika quantum, objek apapun yang memiliki dua status berbeda pasti memiliki rangkaian status potensial lain, disebut superposisi, yang menjerat kedua status hingga derajat bermacam-macam. 
D) Quantum Gates
Quantum Gates / Gerbang Quantum merupakan sebuah aturan logika / gerbang logika yang berlaku pada quantum computing. Prinsip kerja dari quantum gates hampir sama dengan gerbang logika pada komputer digital. Jika pada komputer digital terdapat beberapa operasi logika seperti AND, OR, NOT, pada quantum computing gerbang quantum terdiri dari beberapa bilangan qubits, sehingga quantum gates lebih susah untuk dihitung daripada gerang logika pada komputer digital. 
E)  Algoritma Shor
Algoritma Shor adalah contoh lanjutan paradigma dasar (berapa banyak waktu komputasi diperlukan untuk menemukan faktor bilangan bulat n-bit?), tapi algoritma ini tampak terisolir dari kebanyakan temuan lain ilmu informasi quantum. Sekilas, itu cuma seperti trik pemrograman cerdik dengan signifikansi fundamental yang kecil. Penampilan tersebut menipu; para periset telah menunjukkan bahwa algoritma Shor bisa ditafsirkan sebagai contoh prosedur untuk menetapkan level energi sistem quantum, sebuah proses yang fundamental. Seiring waktu berjalan dan kita mengisi lebih banyak pada peta, semestinya kian mudah memahami prinsip-prinsip yang mendasari algortima Shor dan algoritma quantum lainnya.
Sebuah komputer kuantum tidaklah sama dengan komputer klasik. Hal ini tidak dalam hal kecepatan saja, namun juga dalam hal pemrosesan informasi. Sebuah komputer kuantum dapat mensimulasikan sebuah proses yang tidak dapat dilakukan oleh komputer klasik.
Algoritma Shor terdiri dari dua bagian:
  • Ø  Penurunan yang bisa dilakukan pada komputer klasik, dari masalah anjak untuk masalah ketertiban -temuan.
  • Ø  Sebuah algoritma kuantum untuk memecahkan masalah order-temuan.
Contoh algoritma yang paling sederhana adalah menemukan faktor – faktor dari bilangan 15, dimana membutuhkan komputer kuantum dengan 7 qubit.

Sumber :