Pendahuluan
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 :
Nama
Merupakan
satu-satunya informasi yang tetap dalam bentuk yang bisa dibaca oleh
manusia (human readable form)
Type
Dibutuhkan
untuk sistem yang mendukung beberapa tipe berbeda
Lokasi
Merupakan
pointer atau penunjuk ke device dan lokasi file pada device tersebut
berada
Ukuran
(Size)
Ukuran
file pada saat itu, baik dalam byte, huruf ataupun blok
Proteksi
Informasi
mengenai kontrol akses, misalnya siapa saja yang boleh membaca,
menulis dan mengeksekusi file
Waktu,
tanggal dan identifikasi pengguna Informasi ini biasanya disimpan
untuk :
Pembuatan
file
Modifikasi
terakhir yang dilakukan pada file
Penggunaan
terakhir file
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
Komponen-komponen
file service adalah terdiri dari : File Service
Pengoperasian
dari masing-masing file. Directory Service
Management
atau pengaturan direktori 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
Transparency
Keseimbangan
antara flesibilitas dan skalabilitas terhadap kompleksitas dan
performansi dalam desainnya.
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.
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.
Hardware
dan Operating Systems
Heterogenitas
atau kesamaan adalah kebutuhan yang sangat penting dalam melayani
keterbukaan.
Fault
Tolerance
Service
harus terus menerus beroperasi walaupun terjadi kesalahan atau error
pada client ataupun server
Consistency
Security
Semua
sistem melayani mekanisme akses kontrol berbasiskan daftar akses
kontrol (access control lists)
Efficiency
Sistem
harus dapat melayani perbandingan performance apakah lebih baik atau
tidak.
Opsi
Desain dalam File Service
Stateful
Stateless
Contoh
File Service
NFS
(Network File System)
Network
File System (NFS) merupakan sebuah protokol yang dikembangkan oleh
Sun Microsystem pada tahun 1984 dan NFS didefinisikan dalam RFC 1094,
1813 dan 3530 sebagai DFS yang mengijikan sebuah komputer untuk
mengakses file melalui network serasa akses file di disk local.
NFS merupakan protokol yang sangat mendukung dalam pengaplikasian
suatu file system yang terdistribusi.
Interface Service
Interface
service adalah metode standard komunikasi yang dapat dipakai oleh
siapapun tanpa membedakan vendornya. Interface Service merupakan
titik point yang konsumen gunakan untuk mengakses fungsionalitas yang
diarahkan oleh aplikasi. Interface Service biasanya menggunakan
alamat jaringan, yang berarti bahwa ia dapat di akses oleh konsumen
lebih dari beberapa macam komunikasi jarigan. Alamat jaringan dapat
terkenal lokasinya atau ia dapat terkandung dari direktori service
seperti UDDI.
Sebuah
kunci aspek dari desain service interface untuk memisahkan
implementasi yang dibutuhkan untuk mengkomunikasikan dengan system
lain dari aplikasi logika bisnis. Interface Service menyediakan
interface yang jauh lebih kasar sambil menjaga semantik dan rincian
lebih halus dari logika aplikasi. Hal ini juga memberikan penghalang
yang memungkinkan logika aplikasi dapat berubah tanpa mempengaruhi
interface konsumen.
Interface
Service mengimplementasikan kontrak antara konsumen dan penyedia.
Kontrak ini memungkinkan mereka untuk bertukar informasi bahkan jika
mereka berada di sistem yang berbeda. Interface Service bertanggung
jawab untuk semua rincian pelaksanaan yang dibutuhkan untuk melakukan
komunikasi ini. Rincian tersebut termasuk tetapi tidak terbatas pada:
Network
protocol. Interface Service harus merangkum semua aspek dari network
protocol yang digunakan untuk komunikasi antara konsumen dan
pelayanan. Sebagai contoh, anggaplah layanan terkena konsumen melalui
HTTP melalui jaringan TCP/IP. Anda dapat menerapkan Interface Service
sebagai komponen ASP.NET diterbitkan ke URL terkenal. Komponen
ASP.NET menerima permintaan HTTP, ekstrak informasi yang dibutuhkan
oleh layanan untuk memproses permintaan tersebut, memanggil
implementasi layanan, paket respon layanan, dan mengirim respon
kembali ke konsumen sebagai respon HTTP. Dari perspektif layanan,
satu-satunya komponen yang memahami HTTP adalah antarmuka layanan.
Pelaksanaan layanan memiliki kontrak sendiri dengan antarmuka layanan
dan seharusnya tidak memiliki ketergantungan pada spesifikasi
teknologi yang digunakan konsumen untuk berkomunikasi dengan
antarmuka layanan.
Data
formats. Menerjemahkan Interface Service konsumen antara format data
dan format data yang mengharapkan layanan. Sebagai contoh, konsumen
eksternal untuk perusahaan dapat menyediakan data dan mengharapkan
data yg berada dalam format XML yang sesuai dengan skema standar
industri XML. Konsumen internal untuk perusahaan mungkin ingin
menggunakan format XML dioptimalkan untuk layanan tertentu. Interface
Service bertanggung jawab untuk mengubah dan pemetaan kedua format
data dalam format yang dapat menggunakan layanan ini. Pelaksanaan
pelayanan tidak memiliki pengetahuan tentang format data spesifik
Interface Service mungkin gunakan untuk berkomunikasi dengan
konsumen.
Security.
Interface Service harus dipertimbangkan batas kepercayaan sendiri.
Konsumen yang berbeda mungkin memiliki persyaratan keamanan yang
berbeda, jadi terserah untuk Interface Service untuk melaksanakan
konsumen spesifik persyaratan. Misalnya, konsumen eksternal untuk
perusahaan umumnya akan memiliki persyaratan keamanan yang lebih
ketat daripada konsumen internal untuk perusahaan. Konsumen eksternal
mungkin memiliki persyaratan otentikasi kuat dan hanya dapat diberi
kewenangan untuk melakukan subset yang sangat terbatas dari operasi
yang berwenang untuk konsumen internal. Konsumen internal dapat
dipercaya secara implisit untuk kebanyakan operasi dan hanya
membutuhkan otorisasi untuk operasi yang paling sensitif.
Service
level agreements. Interface Service memiliki peran signifikan dalam
memastikan bahwa pelayanan memenuhi komitmen tingkat layanan untuk
satu set khusus konsumen. Interface Service dapat mengimplementasikan
caching untuk meningkatkan waktu respon dan mengurangi konsumsi
bandwidth. Beberapa contoh dari Interface Service dapat digunakan di
satu set beban-seimbang node pengolahan untuk mencapai skalabilitas,
ketersediaan, dan kesalahan-toleransi persyaratan.
Sumber
:
http://blog.tp.ac.id/wp-content/uploads/3701/download-framework-pengembangan-aplikasi-berbasis-soa-service-oriented-architecture.pdf
http://digilib.its.ac.id/public/ITS-Undergraduate-14303-paperpdf.pdf
http://msdn.microsoft.com/en-us/library/ff647559.aspx
http://naeli.staff.gunadarma.ac.id/Downloads/folder/0.1