pengantar data terdistribusi

advertisement
PENGOLAHAN
DATATERDISTRIBUSI
TERDISTRIBUSI
PENGANTAR DATA
Materi:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Pengenalan Sistem Terdistribusi
Komunikasi
Proses
Sistem Operasi Terdistribusi
File dan Name Service
Time & Coordination
Share Data & Transaction
Distributed Database Management
Parallel Processing
Security dalam Pengolahan Data Terdistribusi
1. "A system in which hardware or software components located at
networked computers communicate and coordinate their actions
only by message passing.“ [Coulouris]
2. "A system that consists of a collection of two or more independent
computers which coordinate their processing through the
exchange of synchronous or asynchronous message passing."
3. "A distributed system is a collection of independent computers
that appear to the users of the system as a single computer."
[Tanenbaum]
4. "A distributed system is a collection of autonomous computers
linked by a network with software designed to produce an
integrated computing facility."
Data Terdistribusi
PPengolahan
DT
Definisi
• Sebuah sistem terdistribusi (DS) terdiri dari sekumpulan
komputer yang mandiri yang terhubung dalam jaringan
komputer dan dilengkapi dengan software sistem terdistribusi
(Colouris 1994)
• Software Sistem Terdistribusi dapat mengkoordinir aktifitas
masing-masing komputer dan melakukan pertukaran sumber
daya sistem HW, SW dan data
• Pengguna sistem terdistribusi dapat merasakan sebuah fasilitas
komputer yang terpadu meskipun sebenarnya terdiri dari
banyak komputer yang berada di lokasi yang berbeda secara
geografis
Data Terdistribusi
PPengolahan
DT
Sistem Terdistribusi vs Sistem Paralel
• Kelebihan sistem terdistribusi
•
•
•
•
•
•
•
Pertukaran sumber daya (prosesor)
Pertukaran data
Struktur geografis
Penyederhanaan logik
Modular
Reliabel
Biaya rendah
• Kelemahan sistem terdistribusi
• Biaya komunikasi membengkak
• Pemaduan yang sulit
• Pembuatan program yang lebih sulit
Data Terdistribusi
PPengolahan
DT
Alasan perlunya sistem terdistribusi
• Distribusi fungsi : komputer memiliki kemampuan
fungsi yang berbeda-beda
• client/server
• Host/terminal
• Data gathering / data processing
• Distribusi beban/keseimbangan : pemberian tugas
ke prosesor secukupnya sehingga unjuk kerja
seluruh sistem teroptimasi.
• Sifat terdistribusi mencegah terjadinya application
domain, e.g.
• cash register dan sistem persediaan untuk supermarket,
• Komputer pendukung collaborative work
Data Terdistribusi
PPengolahan
DT
Lanjutan…
• Replikasi kekuatan pemrosesan : independent processors
bekerja untuk pekerjaan yang sama
• Sistem terdistribusi terdiri dari kumpulan mikrokomputer yang
memiliki kekuatan pemrosesan yang tidak dapat dicapai oleh
superkomputer
• 10000 CPU, masing-masing berjalan pada 50 MIPS, mencapai
500000 MIPS,
• Maka satu perintah dijalankan dalam waktu 0.002 nsec
• Pemisahan fisik : sistem yang menggantungkan pada fakta
bahwa komputer secara fisik terpisah (e.g., untuk mencapai
kehandalan).
• Ekonomis : kumpulan mikroprosesor menawarkan
harga/unjuk kerja yang lebih baik dari pada mainframe
Data Terdistribusi
PPengolahan
DT
Mengapa Sistem Terdistribusi ?
• Butuh berbagi data dan resource di antara pemakai
• Mendukung komunikasi person-to-person
• Fleksibilitas : komputer yang berbeda dengan
kemampuan yang berbeda dapat di share antar user
Data Terdistribusi
PPengolahan
DT
Masalah dengan sistem terdistribusi
• Software - bagaimana merancang dan mengatur software
dalam DS
• Ketergantungan pada infrastruktur jaringan (world wide
wait....)
• Kemudahan akses ke data yang di share, memunculkan
masalah keamanan
Data Terdistribusi
PPengolahan
DT
Konsekuensi...
(Karakteristik Sistem Terdistribusi)
• Sistem terdistribusi adalah sistem concurrent (serentak)
• Setiap komponen hardware/software bersifat otonom (kita akan
menyebut komponen otonom adalah "proses")
• Komponen menjalankan tugas bersamaan
• Contoh : A dan B adalah concurrent jika A dapat terjadi sebelum B, dan B
dapat terjadi sebelum A
• Sinkronisasi dan koordinasi dengan message passing
• Sharing resources
• Masalah umum dalam sistem concurrent
• Deadlock
• Lifeclock
• Komunikasi yang tidak handal
Data Terdistribusi
PPengolahan
DT
• Keterbatasan dalam global clock
– Terdapat batasan pada ketepatan proses sinkronisasi
clock pada sistem terdistribusi, oleh karena asynchronous
message passing
• Pada sistem terdistribusi, tidak ada satu proses tunggal yang
mengetahui global state sistem saat ini (disebabkan oleh
concurrency dan message passing)
• Independent failure
• Kemungkinan adanya kegagalan proses tunggal yang tidak
diketahui
• Proses tunggal mungkin tidak peduli pada kegalalan sistem
keseluruhan
Data Terdistribusi
PPengolahan
DT
Tantangan dalam perancangan dan penerapan
• Karaketristik sistem terdistribusi
• Heterogenitas
• Pertukaran sumberdaya
• Keterbukaan
• Konkurensi / Multi proses
• Berubah ukuran
• Mampu mengatasi kesalahan
• Transparan
• Keamanan
• Software Sistem dan aplikasinya harus dirancang dengan baik
Data Terdistribusi
PPengolahan
DT
Heterogenitas
• Bermacam-macam dan unik
• Sebuah DS memungkinkan para pengguna untuk mengakses dan
menjalankan beberapa aplikasi dengan bermacam-macam komputer dan
jaringan
• Keragaman ini meliputi :
• Jaringan
• Komputer (PC-IBM-Aple-Mac ...)
• Sistem operasi – Windows2000, Unix/Linux, OS2
• Bahasa pemrograman dan DBMS – Java, C++, Oracle, SQL server
• Diterapkan oleh berbagai pengembang sistem
• Jaringan
• Internet terdiri dari berbagai tipe jaringan yang berbeda, namun
perbedaan tersebut tertutup dengan kenyataan bahwa semua
komputer dapat berkomunikasi menggunakan protokol TCP/IP
Data Terdistribusi
PPengolahan
DT
• Hardware
• Tipe data mis. integer digambarkan berbeda tergantung dari
perangkatnya :
• Berdasarkan byte 0 Big endian, Little endian
• Ukuran – 16 bit, 23, 64 bit
• Perbedaan tersebut harus diselesaikan jika pesan diubah selama
program jalan di hardware
• Sistem operasi
• Unix/Linux/Window 2000 memiliki kode API yang berbeda, untuk saling
berhubungan melalui protokol TCP/IP
• Bahasa pemrograman dan DBMS
• Menggunakan gambaran yang berbeda untuk karakter dan struktur data
- array dan record
• Perbedaan ini harus di samakan
• Diterapkan oleh pengembang yang berlainan
• Program ditulis oleh pengembang berbeda yang tidak dapat
dikomunikasikan satu dengan yang lain sampai ada standar untuk
menyamakan
• Standar butuh persetujuan dan diterima
Data Terdistribusi
PPengolahan
DT
Pertukaran sumber daya
• Berbagai alat dengan karakter yang berbeda dapat di”share”
secara penuh dalam DS :
• HW : printer, cd-rom, hd
• SW : file, database, compiler, aplikasi
• Sharing, mengurangi biaya
• Sangat penting untuk mendukung kerjasama grup
• Setiap perlatan yang terhubung dengan sebuah komputer (mis.
Printer) dalam DS harus dikelola dengan sebuah program
sehingga dapat di :
• Akses
• Untuk mencetak, mengubah kwalitas cetak
• Diberi alamat sendiri (IP)
• Manipulasi dan update
• Sikronisasi pada saat akses bersamaan untuk menjaga
konsistensi, mis: database
Data Terdistribusi
PPengolahan
DT
Keterbukaan
• Artinya sistem dapat di ubah dan diterapkan dengan berbagai
cara seperti :
• Tingkat HW, posisi komputer dalam jaringan
• Tingkat SW, pengenalan layanan baru mengganti yang lama
• Kunci dari file tersebut telah dipublikasikan sehingga
memungkinkan untuk dikembangkan siapapun
• Dasar DS yang terbuka adalah adanya mekanisme komunikasi
yang seragam(mis. RPC, CORBA) dan antar muka umum untuk
akses pertukaran sumber daya
• DS yang terbuka dapat dibangun dari berbagai HW dan SW dari
vendor yang berbeda. Meskipun demikian berbagai komponen
tersebut harus sudah diuji kesesuaiannya sehingga sistem
berjalan dengan benar.
Data Terdistribusi
PPengolahan
DT
Concurrency
• Concurrency dan eksekusi paralel dalam DS untuk :
• Memisahkan kegiatan masing-masing user
• Kemandirian sumberdaya
• Lokasi proses di komputer yang terpisah
• Jika ada M komputer (dg CPU) terhubung dalam DS, maka M
proses dapat berjalan secara bersamaan
• Jika beberapa proses menggunakan sumber daya yang sama,
maka perlu sinkronisasi supaya tidak konflik
Data Terdistribusi
PPengolahan
DT
Berubah ukuran
• DS harus beroperasi secara efektif dan efisien pada berbagai
keadaan:
• Dua workstation dengan file server
• LAN dengan ratusan ws dan banyak file server
• Beberapa LAN terhubung membentuk WAN
• SW sistem dan aplikasi harus tidak memerlukan perubahan
meskipun ukuran sistemnya berubah
• Waktu proses yang diperlukan sebuah sumber daya tidak
berubah meskipun luas jaringan bertambah
• Tidak ada sumber daya tunggal (hw/sw) yang harus selalu ada
untuk pengembangan sumber daya lain
Data Terdistribusi
PPengolahan
DT
Toleransi kesalahan
• Terkadang sistem rusak
• Ketika ada hw atau sw yang salah, program akan :
• Membetulkan hasil
• Berhenti sebelum proses penghitungan selesai
• Mendeteksi kesalahan
• Beberapa kesalahan dapat dideteksi (sebelumnya)
• Mis. cheksum yang dapat digunakan untuk mendeteksi pencurian data
dalam sebuah pesan atau file
• Menutupi kerusakan
• Beberpa kerusakan yang terdeteksi dapat di hidden atau diminimalkan
• Pesan dapat dikirim ulang
• File dapat ditulis di disk berbeda jika kapasitas tidak mencukupi
• Toleransi kesalahan
• Kebanyakan layanan di internet melakukan kesalahan yang wajar terjadi
pada sistem yang berjalan bersamaan
• Klien dapat dirancangkan pemberitahuan kesalahan, ketika sebuah browser
tidak menemukan webserver, sehingga user tidak dibiarkan terus
menunggu
Pengolahan
Data Terdistribusi
PDT
Toleransi kesalahan
• Perbaikan dari kesalahan
• Ada fasilitas perbaikan atau proses ulang saat sebuah server mengalami
kerusakan
• Kerangkapan
• Fasilitas untuk mentoleransi kerusakan dapat mengakibatkan kerangkapan
komponen :
• Mungkin karena menggunakan dua saluran yang berbeda diinternet
• Dalam DNS, setiap tabel nama selalu ada di dua server berbeda
• Sebuah database mungkin duplikasi di server berbeda untuk
meyakinkan data yang sebenarnya setelah terjadi kerusakan di suatu
server
• Ketersediaan
• Ketika sebuah komponen rusak dalam DS, hanya pekerjaan yang sedang
diproses komponen yang mungkin rusak
• Seorang user mungkin berganti komputer setelah mengalami kerusakan
• Sebuah proses dapat dijalankan dari komputer berbeda
Data Terdistribusi
PPengolahan
DT
Transparansi
• Dapat berarti penyembunyian pengguna dan programer aplikasi dari bagian komponen
DS, sehingga sistem terlihat sperti lubang kosong dari pada sekumpulan komponen
yang berdiri sendiri
• Beberapa contoh transparansi :
• Akses : dapat mengakses informasi lokal atau jarak jauh menggunakan operasi
identifikasi
• Lokasi : informasi dapat diakses tanpa mengetahui lokasinya
• Cocurrency : beberapa proses dapat berjalan bersamaan dengan satu sumber daya
tanpa terjadi interferensi
• Replikasi : dapat meningkatkan isi suatu sumber daya tanpa ijin pemilik atau
programernya
• Kerusakan : Dapat menyembunyikan kerusakan seijin user dan programer aplikasi
untuk melengkapi pekerjaannya akibat kerusakan hw/sw
• Mobilitas : memungkinkan memindahkan sumber daya dan pengguna dalam
sistem tanpa mempengaruhi operasi user atau programer
• Scalling : ukuran sistem dapat diperluas (jaringannya) tanpa mengubah struktur
sistem dan pemrograman
• Transparansi Akses dan Lokasi sesuai bersama sebagai bagian jaringan transparan.
Kberadaannya maupun ketiadaannya sangat mempengaruhi sistem
Data Terdistribusi
PPengolahan
DT
• Gambaran transparansi jaringan
• Memprtimbangkan perintah login Linux
• Hanya bisa seorang nama user yang dapat logon di host
• Sehubungan dengan alamat e-mail
• Alamat [email protected] hanya berisi nama pribadi dan nama
domainnya.
• Domain didefinisikan dan dialokasikan sesuai nama organisasi
• Mengirim pesan ke user lain tidak perlu tahu lokasi fisik dari
domainnya
• Apakah prosedur pengiriman surat tergantung pada lokasi penerima?
Data Terdistribusi
PPengolahan
DT
• Scalability
• Apakah sistem masih efektif dan handal dalam perkiraan
pertumbuhannya?
Date
1979, Dec.
1989, July
1999, July
Date
1993, July
1995, July
1997, July
1999, July
Computers
188 0
130,000 0
56,218,000
Computers
1,776,000
6,642,000
19,540,000
56,218,000
Data Terdistribusi
PPengolahan
DT
Web servers
5,560,866
Web servers Percentage
130
0.008
23,500 0.4
1,203,096
6
6,598,697
12
Rancangan
• Hal yang penting dalam membangun DS :
• Naming
• Komunikasi
• Struktur sw
• Alokasi beban kerja
• Perawatan yang konsisten
• Seorang perancang harus memahami sistem terdistribusi, rancangan
interface, rekayasa sw dll.
Data Terdistribusi
PPengolahan
DT
Naming
• Dasar DS adalah pada pertukaran sumber daya dan pada transparansi
penyebaran sumber daya
• Nama yang menunjukkan sumber daya harus :
• Mempunyai arti global yang menunjukkan lokasi
• Didukung dengan nama sistem yang dapat diterjemahkan program
untukmengakses sumber daya
• Proses yang membutuhkan akses sumber daya yang mana tidak dikelola harus
menyertakan nama atau identitasnya.
• Nama, menunjuk nama yang dapat diinterprestasikan user atau program
• Identitas, menunjuk nama yang diinterprestasikan atau digunakn hanya oleh
program
• Struktur nama
• Harus menunjukkan setiap tipe sumber daya
• Hirarki, mis. /etc/passwd memungkinkan untuk berkembang
• Flat / datar selalu memperhatikan ukuran panjang maksimal yang ditentukan
Data Terdistribusi
PPengolahan
DT
Komunikasi
• Komponen DS meliputi bagian logika dan fisik yang terpisah; mereka
harus di komunikasikan secara urut supaya dapat berinteraksi
• Komunikasi antara sepasang proses meliputi :
• Transfer data dari lingkungan yang mengirim proses ke linglungan
yang menerima proses
• Beberapa komunikasi memrlukan sinkronisasi antara pengirim dg
penerima, sehingga pengirm dan penerima berhenti s.d proses
yang lain membebaskannya
• Mekanisme :
• Syncron (blocking) – pengirim menunggu sesudah pengiriman
pesan s.d penerima melakukan operasi penerimaan
• Asyncron (non-blocking) – pesan di tempatkan dalam antrian
menunggu penerima menerima dan pengirim melakukan
pengirimanlagi
Data Terdistribusi
PPengolahan
DT
Bentuk komunikasi
• Client-server
• Cenderung melakukan layanan searah
• Pertukaranmeliputi :
• Transmisi dari client ke server
• Eksekusi pesan oleh server
• Transmisikan kembali ke client
• Server harus selalu siap pada adanya permintaan dan client harus
menunggu sampai dengan balasan diterima
• Tidak ada client yang diprioritaskan
• Setiap permintaan berisi CID yang digunakan untuk
mengirmkankembali ke client
• Dalam open system client tidak dapat dikenali untuk menunda CID
semua server yang ingin diakses
Data Terdistribusi
PPengolahan
DT
Bentuk komunikasi
• Group multicast
• Sasaran pesan adalah kelompok proses
• Alasan :
• Multiple update
• Pesan dari client berisi nama dari direktori file server. Setiap
saat hanya satu permintaan client yang bisa dilayani oleh file
server
Data Terdistribusi
PPengolahan
DT
Struktur SW
• Setiap kategori sw berhubungan dengan tingkat yang berbeda dalam
abstraksi DS :
• User yang bekerja dg spreadsheet mempunyai bagian tersendiri
dalam DS
• Seorang programer mungkin menulis dalam bahasa
pemrograman terdistribusi dan menggunakan lapisan servis
Data Terdistribusi
PPengolahan
DT
• Kategori sw dalam DS :
• Aplikasi
• Sistem operasi
• Menyediakan pengelolaan sumber daya dasar
• Alokasi memori dan perlindungan
• Penciptaan proses dan penjadwalan
• Komunikasi antar proses
• Penanganan peralatan
• Memberikan kumpulan abstraksi pemorgraman berorientasi masalah yang
umum, seperti proses aplikasi, melindungi dari lapisan prosesor dan
peralatan lain
• Harus menmperkuat perlindungan kode dan data terhadap perubahan
waktu proses
• Open service (layanan terbuka)
• Membawa fasilitas pemrograman dalam DS sesuai tingkat yang diperlukan
• Layanan baru dapat dibangun dan diinstal sesuai kebutuhan
• Layanan mulai dari file layanan dasar s.d layanan e-mail
• Mendukung pemrograman terdistribusi
Data Terdistribusi
PPengolahan
DT
Contoh DS : Internet
• Jaringan komputer dan aplikasi yang heterogen
• Mengimplementasikan protokol Internet
Data Terdistribusi
PPengolahan
DT
Contoh DS : Sistem Multimedia Terdistribusi
Biasanya digunakan pada infrastruktur internet
• Karakteristik
• Sumber data yang heterogen dan memerlukan sinkronisasi secara
real time
• Video, audio, text
• Multicast
• Contoh:
• Teleteaching tools (mbone-based, etc.)
• Video-conferencing
• Video and audio on demand
Data Terdistribusi
PPengolahan
DT
Contoh DS: Intranet
Jaringan yang teradministrasi secara lokal
• Biasanya proprietary
• Terhubung ke internet (melalui firewall)
• Menyediakan layanan internal dan eksternal
Data Terdistribusi
PPengolahan
DT
Contoh DS : Mobile dan Sistem
Komputasi Ubiquitous
• Sistem telepon Cellular (e.g., GSM)
• Resources dishare : frekuensi radio, waktu transmisi dalam satu
frekuensi, bergerak
• Komputer laptop, ubiquitous computing
• Handheld devices, PDA, etc
Data Terdistribusi
PPengolahan
DT
Contoh DS lainnya
• Sistem telepon
• ISDN, PSTN
• Manajemen jaringan
• Administrasi sesumber jaringan
• Network File System (NFS)
• Arsitektur untuk mengakses sistem file melalui jaringan
• WWW
• Arsitektur client/server tebuka yang diterapkan di atas infrastruktur
internet
• Shared resources (melalui URL)
Data Terdistribusi
PPengolahan
DT
World Wide Web
Data Terdistribusi
PPengolahan
DT
Tugas
Buat kelompok dengan anggota 2-3 orang dan buatlah artikel
tentang sistem tersebar untuk dipresentasikan.
Data Terdistribusi
PPengolahan
DT
Download