Sistem Terdistribusi
TIK-604
Pengantar Perkuliahan
Pertemuan 01, 01 Maret 2017
Husni
[email protected]
Husni.trunojoyo.ac.id/kuliah/sister
About Me
Husni
Lab. Sister
Email: [email protected]
Web Site: Husni.trunojoyo.ac.id
Bidang Kajian:
High Performance Computing
[Big] Data Science and Mining
Mengapa Sistem Terdistribusi dikaji?
Application Domain
Associated Networked Application
Finance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking and trading
The information society Web information and search engines, ebooks, Wikipedia; social networking: Facebook and MySpace.
Creative industries and entertainment online gaming, music and film in the home, user-generated content, e.g. YouTube, Flickr
Healthcare health informatics, online patient records, monitoring patients
Education e-learning, virtual learning environments; distance learning
Transport and logistics GPS in route finding systems, map services: Google Maps, Google Earth
Science The Grid as an enabling technology for collaboration between scientists
Environmental management sensor technology to monitor earthquakes, floods or tsunamis
Application Domain
Associated Networked Application
Finance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking and trading
The information society Web information and search engines, ebooks, Wikipedia; social networking: Facebook and MySpace.
Creative industries and entertainment online gaming, music and film in the home, user-generated content, e.g. YouTube, Flickr
Healthcare health informatics, online patient records, monitoring patients
Education e-learning, virtual learning environments; distance learning
Transport and logistics GPS in route finding systems, map services: Google Maps, Google Earth
Science The Grid as an enabling technology for collaboration between scientists
Environmental management sensor technology to monitor earthquakes, floods or tsunamis
Application Domain
Associated Networked Application
Finance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking and trading
The information society Web information and search engines, ebooks, Wikipedia; social networking: Facebook and MySpace.
Creative industries and entertainment online gaming, music and film in the home, user-generated content, e.g. YouTube, Flickr
Healthcare health informatics, online patient records, monitoring patients
Education e-learning, virtual learning environments; distance learning
Transport and logistics GPS in route finding systems, map services: Google Maps, Google Earth
Science The Grid as an enabling technology for collaboration between scientists
Environmental management sensor technology to monitor earthquakes, floods or tsunamis
Application Domain
Associated Networked Application
Finance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking and trading
The information society Web information and search engines, ebooks, Wikipedia; social networking: Facebook and MySpace.
Creative industries and entertainment online gaming, music and film in the home, user-generated content, e.g. YouTube, Flickr
Healthcare health informatics, online patient records, monitoring patients
Education e-learning, virtual learning environments; distance learning
Transport and logistics GPS in route finding systems, map services: Google Maps, Google Earth
Science The Grid as an enabling technology for collaboration between scientists
Environmental management sensor technology to monitor earthquakes, floods or tsunamis
Application Domain
Associated Networked Application
Finance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking and trading
The information society Web information and search engines, ebooks, Wikipedia; social networking: Facebook and MySpace.
Creative industries and entertainment online gaming, music and film in the home, user-generated content, e.g. YouTube, Flickr
Healthcare health informatics, online patient records, monitoring patients
Education e-learning, virtual learning environments; distance learning
Transport and logistics GPS in route finding systems, map services: Google Maps, Google Earth
Science The Grid as an enabling technology for collaboration between scientists
Environmental management sensor technology to monitor earthquakes, floods or tsunamis
Application Domain
Associated Networked Application
Finance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking and trading
The information society Web information and search engines, ebooks, Wikipedia; social networking: Facebook and MySpace.
Creative industries and entertainment online gaming, music and film in the home, user-generated content, e.g. YouTube, Flickr
Healthcare health informatics, online patient records, monitoring patients
Education e-learning, virtual learning environments; distance learning
Transport and logistics GPS in route finding systems, map services: Google Maps, Google Earth
Science The Grid as an enabling technology for collaboration between scientists
Environmental management sensor technology to monitor earthquakes, floods or tsunamis
Application Domain
Associated Networked Application
Finance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking and trading
The information society Web information and search engines, ebooks, Wikipedia; social networking: Facebook and MySpace.
Creative industries and entertainment online gaming, music and film in the home, user-generated content, e.g. YouTube, Flickr
Healthcare health informatics, online patient records, monitoring patients
Education e-learning, virtual learning environments; distance learning
Transport and logistics GPS in route finding systems, map services: Google Maps, Google Earth
Science The Grid as an enabling technology for collaboration between scientists
Environmental management sensor technology to monitor earthquakes, floods or tsunamis
Domain Aplikasi
Aplikasi Jaringan Berkaitan
Finance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking and trading
The information society Web information and search engines, ebooks, Wikipedia; social networking: Facebook and MySpace.
Creative industries and entertainment online gaming, music and film in the home, user-generated content, e.g. YouTube, Flickr
Healthcare health informatics, online patient records, monitoring patients
Education e-learning, virtual learning environments; distance learning
Transport and logistics GPS in route finding systems, map services: Google Maps, Google Earth
Science The Grid as an enabling technology for collaboration between scientists
Definisi Sistem Terdistribusi
Sistem Terdistribusi adalah
Gabungan
komputer-komputer independen yang
tampak bagi penggunanya
sebagai sistem tunggal yang
koheren (Tanenbaum)
Sistem di mana komponen
yang terletak di jaringan
komputer berkomunikasi dan
mengkoordinasikan tindakan
mereka hanya dengan
melewatkan pesan (Coulouris)
Mengapa Sistem Terdistribusi?
• Data besar terus tumbuh:
▪ Pada pertengahan 2010, semesta informasi memuat 1.2
zettabytes
▪ Prediksi 2020 diprediksi hampir 44 kali lebih besar
Mengapa Sistem Terdistribusi?
• Komputer pribadi mempunyai sumber daya terbatas
dibandingkan skala masalah dan domain aplikasi saat ini:
1.
Caches dan Memory:
L1 Cache
L2 Cache
L3 Cache
Main Memory
16KB- 64KB, 2-4 cycles
512KB- 8MB, 6-15 cycles
4MB- 64MB, 30-50 cycles
1GB- 48GB, 300+ cycles
Mengapa Sistem Terdistribusi?
• Komputer
individu
memiliki
sumber
daya
terbatas
dibandingkan dengan skala masalah & domain aplikasi
sekarang :
2. Hard Disk Drive:
▪
Kapasitas terbatas
▪
Jumlah jalur terbatas
Mengapa Sistem Terdistribusi?
P
L1 L2P
L1 L2 CacheP
L1P
L1P
L1 Interconnect• Komputer
individu
memiliki
sumber
daya
terbatas
dibandingkan dengan skala masalah & domain aplikasi
sekarang:
3.
Processor:
▪ Jumlah transistor yang dapat diintegrasikan pada satu
kotak chip tumbuh mengikuti hukum Moore.
▪ Chip Multiprocessors (CMPs) telah tersedia.
Chip processor tunggal
Mengapa Sistem Terdistribusi?
3. Processor (lanjutan):
▪ Sampai beberapa tahun yang lalu, kecepatan CPU tumbuh pada
tingkat 55% per tahun, sedangkan kecepatan memori tumbuh
pada tingkat hanya 7% [H & P]
Memory
Memory
P
M
P
L1 L2P
L1 L2 CacheP
L1P
L1P
L1 InterconnectMengapa Sistem Terdistribusi?
3. Processor (lanjutan):
▪ Kalaupun suatu CMP berisi 100 atau 1000 core. Tantangan:
Bagaimana menghantarkan data input ke core dengan
cepat untuk segera diproses.
Data Set 4 TB
4 Jalur IO 100MB/s
10000 detik
(3 jam)
untuk
memuat
data
Memory
P
L1 L2 CacheP
L1P
L1P
L1 InterconnectMengapa Sistem Terdistribusi?
Hanya 3
menit
untuk
memuat
data
Data Set (data)
4 TB
Dibagi-bagi
Memory
P
L1 L2Memory
P
L1 L2100
mesin
Persyaratan
▪ Tapi ini memerlukan hadirnya :
▪ Cara untuk mengekspresikan masalah sebagai proses
paralel dan mengeksekusi mereka pada mesin yang
berbeda (Programming Models and Concurrency)
▪ Cara bagi proses pada mesin yang berbeda untuk bertukar
informasi (Communication)
▪ Cara bagi proses untuk bekerja sama, melakukan
sinkronisasi satu sama lain dan menyepakati nilai-nilai
bersama (Synchronization)
▪ Cara untuk meningkatkan keandalan (reliability) dan
kinerja (Consistency and Replication)
Persyaratan
▪ Tapi ini mengharuskan adanya (lanjutan):
▪ Cara untuk pulih dari kegagalan parsial (Fault Tolerance)
▪ Cara untuk mengamankan komunikasi dan memastikan
bahwa suatu proses hanya mendapat akses sesuai haknya
(Security)
▪ Cara untuk memperluas antarmuka sehingga dapat meniru
perilaku sistem lain, mengurangi keragaman platform, dan
menyediakan portabilitas dan fleksibilitas tingkat tinggi
(Virtualization)
Kuliah
Tentang
Sistem
Terdistribusi & Paralel
.0.
Introduction
.1.
Processes and Communications
.2.
Naming
.3.
Synchronization
.4.
Consistency and Replication
.5.
Fault Tolerance
.6.
Programming Models
.7.
Distributed File Systems
.8.
Security
.9.
Virtualization
• Pertimbangan: perspektif cukup
kritis dan komprehensif.
• Bijaksana: Perspektif lancar,
fleksibel dan efisien.
• Ahli: perspektif kuat dan
memberikan gambaran jelas.
Capaian Pembelajaran
Learning Outcome
Pengantar
• LO0:
Menguraikan karakteristik sistem terdistribusi dan
tantangan yang harus diatasi dalam desainnya
Proses dan
Komunikasi
• LO1:
Menjelaskan dan membedakan mekanisme
komunikasi antar-proses dan antar-sistem
Penamaan
• LO2
Mengidentifikasi mengapa entitas dan sumber daya di sistem
terdistribusi harus dinamai, dan memeriksa konvensi penamaan
dan mekanisme penamaan resolusi
Sinkronisasi
• LO3:
Mendeskripsikan dan menganalisis bagaimana banyak mesin
dan layanan harus bekerja sama dan melakukan sinkronisasi untuk
memecahkan masalah dengan benar.
Capaian Pembelajaran
Konsistensi dan
Replikasi
• LO4
Identifikasi bagaimana replikasi dari sumber daya
meningkatkan kinerja dalam sistem terdistribusi, dan menjelaskan
algoritma untuk menjaga konsistensi salinan dari replika
Toleransi Gagal
• LO5:
Jelaskan bagaimana sistem terdistribusi dapat dibuat
fault tolerant
Model
Pemrograman
• LO6:
Menjelaskan dan menerapkan model pemrograman
shared-memory, message passing, MapReduce, Pregel dan GraphLab dan
menggambarkan perbedaan penting antara mereka
Sistem File
Terdistribusi
• LO7:
Menjelaskan sistem file terdistribusi sebagai paradigma untuk sistem
terdistribusi bertujuan-umum, menganalisis berbagai aspek dan
arsitekturnya, dan membedakannya dengan file sistem paralel
Capaian Pembelajaran
Keamanan
• LO8:
Menjelaskan berbagai konsep dan
mekanisme yang umumnya tergabung dalam
sistem terdistribusi untuk mendukung keamanan
Virtualisasi
• LO9:
Menjelaskan sumber daya virtualisasi,
bagaimana itu berlaku pada sistem terdistribusi,
dan bagaimana hal itu memungkinkan
manajemen dan penjadwalan sumber daya
terdistribusi.
Tujuan Kuliah
Memberikan pemahaman dan
keterampilan yang memadai
Prinsip yang
mendasari
sistem
terdistribusi
Prinsip untuk
mengoptimal-kan sistem
terdistribusi
Model
pemrograman
& analisa
sistem
terdistribusi
Bagaimana system
terdistribusi
memenuhi
kebutuhan aplikasi
terdistribusi
kontemporer
Tim Ajar
Dosen:
Husni
Asistent:
Belum
ada
Tim Ajar
SisTer
Jam Kantor
Husni
• Selasa, Rabu dan Kamis, sebelum Zhuhur
• Silakan masuk saat pintu ruangan terbuka
• Boleh dengan perjanjian sebelumnya
Jam Kantor
Asisten
Metode Pengajaran
Kuliah (12)
• Memotivasi belajar
• Menyediakan kerangka kerja (framework) atau peta jalan (road
map) untuk mengorganisasi informasi dari kuliah ini
• Menjelaskan pelajaran dan memperkuat ide-ide besar kritis
Praktik Mandiri (4)
• Mempersilakan mahasiswa mengungkapkan apa yang belum
dipahami sehingga dapat dibantu oleh tim pengajaran
• Memungkinkan mahasiswa melatih keterampilan yang dibutuhkan
untuk menjadi ahli
Tugas & Proyek
Tugas & Kuis
• 6 kali tugas atau kuis untuk menyelesaikan suatu masalah
(praktik) atau pemahaman terhadap suatu konsep (teori)
Proyek
• 1 proyek besar yang dibagi menjadi 4 laporan kemajuan:
• Laporan tertulis, dikirim ke email [email protected].
Ingat deadline!
Tugas 1
Bacalah buku atau tutorial jaringan komputer:
Subnetting
Cara kerja
Switch
Cara kerja
Router
Proses yang terjadi pada 7 layer model
referensi OSI
saat terjadi
pengiriman data
dari komputer A ke
komputer B.
Waktu: 7 hari
Proyek 1: Aplikasi Database Desktop
Buat kelompok beranggotakan 3 s.d 4
mahasiswa berjenis-kelamin sama
Buat aplikasi pengolahan basis data sederhana
(CRUD):
GUI berbasis Java (
JavaFX
)
Database
SQLite
Ada 2 kategori user:
Admin
dan
User
biasa (lebih dari
1 username)
Waktu 14 hari (21 Maret 2017 12.59.59)
Hasil: Program siap demo, laporan, slide
presentasi.
Proyek 1: CRUD Lokal, JavaFX
Java 8
SQLite
Port
User
Admin
JavaFX
Aplikasi
CRUD
JD
B
C
SQ
Li
te
1
Proyek 2: Sinkronisasi Database
Java 8 SQLite Port JavaFX Apli kasi JDB C SQ Lit e Java 8 SQLite Port JavaFX Apli kasi JDB C S Q Lit e MySQL Server PortSinkronisasi
Database
2
Proyek 3: Sinkronisasi via Socket
Java 8 SQLite Port JavaFX JDB C S Q Lit e SQLite PortSinkronisasi
Data via
Socket
3
Socket Server JDB C M yS Q L Port MySQL Server Port Aplikasi Port Socket Java 8 JavaFX JDB C S Q Lit e Java 8 Aplikasi Port SocketProyek 4: Sinkronisasi Service
Java 8
SQLite
Port
JavaFX
JDB
C
SQ
Lit
e
SQLite
Port
Sinkronisasi
Data via Web Service
4
Web Service
(Provider)
JDB
C
M
yS
Q
L
Port
MySQL Server
Port
Aplikasi
(Pelanggan
WS)
Java 8
JavaFX
JDB
C
SQ
Lit
e
Aplikasi
(Pelanggan
WS)
Java 8
Penilaian Proyek
Untuk semua proyek kecuali proyek terakhir,
berlaku aturan berikut:
Jika terlambat dikumpulkan (via email) sehari,
maka nilai dikurangi 25% (pinalti)
Jika terlambat 2 hari maka dikurangi 50%
Proyek tidak dinilai (alias nol) jika terlambat lebih
dua hari
Metode Penilaian
Bagaimana kinerja belajar diukur?
Jenis
#
Bobot
Proyek
(Kelompok)
4
50%
Ujian (UTS & UAS)
2
30% (15% UTS &
15% UAS)
Tugas & Kuis
(Personal)
6
30%
Peserta dan Prasyarat
Peserta:
Mahasiswa senior
Mnimal semester 6.
Prasyarat:
TIK-444: Jaringan Komputer
Mahasiswa harus memiliki pengetahuan dasar tentang
sistem komputer dan jaringan komputer