tik-604 - komputasi · pdf fileujian (uts & uas) 2 30% (15% uts & 15% uas) tugas &...
TRANSCRIPT
Sistem Terdistribusi
TIK-604
Pengantar PerkuliahanPertemuan 01, 01 Maret 2017
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
Environmental management sensor technology to monitor earthquakes, floods or tsunamis
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.2zettabytes
▪ Prediksi 2020 diprediksi hampir 44 kali lebih besar
• Aplikasi menjadi data-intensive dan compute-intensive.
Mengapa Sistem Terdistribusi?
• Komputer pribadi mempunyai sumber daya terbatasdibandingkan 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 terbatasdibandingkan dengan skala masalah & domain aplikasisekarang :
2. Hard Disk Drive:
▪ Kapasitas terbatas
▪ Jumlah jalur terbatas
▪ Bandwidth juga terbatas
Mengapa Sistem Terdistribusi?
P
L1
L2
P
L1
L2 Cache
P
L1
P
L1
P
L1
Interconnect
• Komputer individu memiliki sumber daya terbatasdibandingkan dengan skala masalah & domain aplikasisekarang:
3. Processor:
▪ Jumlah transistor yang dapat diintegrasikan pada satukotak chip tumbuh mengikuti hukum Moore.
▪ Chip Multiprocessors (CMPs) telah tersedia.
Chip processor tunggalSuatu CMP
Mengapa Sistem Terdistribusi?
3. Processor (lanjutan):▪ Sampai beberapa tahun yang lalu, kecepatan CPU tumbuh pada
tingkat 55% per tahun, sedangkan kecepatan memori tumbuhpada tingkat hanya 7% [H & P]
Memory
Memory
P
M
P
L1
L2
P
L1
L2 Cache
P
L1
P
L1
P
L1
Interconnect
Kesenjangan kecepatan prosesor-Memory
Mengapa Sistem Terdistribusi?
3. Processor (lanjutan):
▪ Kalaupun suatu CMP berisi 100 atau 1000 core. Tantangan:Bagaimana menghantarkan data input ke core dengancepat untuk segera diproses.
Data Set
4 TB
4 Jalur IO 100MB/s
10000 detik(3 jam) untuk
memuat data
Memory
P
L1
L2 Cache
P
L1
P
L1
P
L1
Interconnect
Mengapa Sistem Terdistribusi?
Hanya 3 menit untuk
memuat data
Data Set (data) 4 TB
Dibagi-bagi
Memory
P
L1
L2
Memory
P
L1
L2
100 mesin
Persyaratan
▪ Tapi ini memerlukan hadirnya :
▪ Cara untuk mengekspresikan masalah sebagai prosesparalel dan mengeksekusi mereka pada mesin yangberbeda (Programming Models and Concurrency)
▪ Cara bagi proses pada mesin yang berbeda untuk bertukarinformasi (Communication)
▪ Cara bagi proses untuk bekerja sama, melakukansinkronisasi satu sama lain dan menyepakati nilai-nilaibersama (Synchronization)
▪ Cara untuk meningkatkan keandalan (reliability) dankinerja (Consistency and Replication)
Persyaratan
▪ Tapi ini mengharuskan adanya (lanjutan):
▪ Cara untuk pulih dari kegagalan parsial (Fault Tolerance)
▪ Cara untuk mengamankan komunikasi dan memastikanbahwa suatu proses hanya mendapat akses sesuai haknya(Security)
▪ Cara untuk memperluas antarmuka sehingga dapat meniruperilaku sistem lain, mengurangi keragaman platform, danmenyediakan 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 PembelajaranLearning 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 menjelaskanalgoritma 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 KantorHusni
• Selasa, Rabu dan Kamis, sebelum Zhuhur
• Silakan masuk saat pintu ruangan terbuka
• Boleh dengan perjanjian sebelumnya
Jam KantorAsisten
• Masih diusahakan...
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!
• Presentasi Laporan, di kelas, sesuai jadwal.
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
Pertemuan selanjutnya: kuis tentang netwoking.
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
JDB
C SQ
Lite
1
Proyek 2: Sinkronisasi Database
Java 8 SQLite
Port
JavaFX
Aplikasi
JDB
C S
QLi
te
Java 8 SQLite
Port
JavaFX
Aplikasi
JDB
C S
QLi
te
MySQL Server
Port
Sinkronisasi Database
2
Proyek 3: Sinkronisasi via Socket
Java 8 SQLite
Port
JavaFXJDB
C S
QLi
te
SQLite
Port
Sinkronisasi Data via Socket
3Socket Server
JDB
C M
ySQ
L
Port
MySQL Server
Port
Aplikasi
Port Socket
Java 8
JavaFX JDB
C S
QLi
te
Java 8
Aplikasi
Port Socket
Proyek 4: Sinkronisasi Service
Java 8 SQLite
Port
JavaFXJDB
C S
QLi
te
SQLite
Port
SinkronisasiData via Web Service
4Web Service
(Provider) JDB
C M
ySQ
L
Port
MySQL Server
Port
Aplikasi(Pelanggan
WS)
Java 8
JavaFX JDB
C S
QLi
teAplikasi(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%
Kehadiran di kelas 18 <15 tidak UAS
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
Pengetahuan dan kemampuan pemrograman berorientasi obyek dan aplikasi web sangat membantu.
Pert. Topik Penugasan
1. Pengantar perkuliahan Mulai Proyek 1
2. Tren dan Tantangan Tugas 1: Kuis
(prinsip Jaringan)
3. Proyek 1
Model Arsitektural
Deadline Proyek 1
Mulai Proyek 2 (Sinkronisasi)
4. Jaringan Mulai Tugas 2
(Multithread & Socket
programming)
5. Komunikasi Tugas 3: Kuis
(trend & arsitektur)
6. Proyek 2
Penamaan
Deadline Proyek 2
Mulai Proyek 3 (Socket)
7. Web Services &
Microservices
Deadline Tugas 2
8. Ujian Tengah Semester
9. Proyek 3 Deadline Proyek 3
Mulai Proyek 410. Sinkronisasi Tugas 4: Kuis
Mulai Tugas 511. Konsistensi & Replikasi12 Model Pemrograman Deadline Tugas 5
Mulai Tugas 613. Toleransi Kegagalan14. Hosting Virtual Modern Deadline Tugas 6
15. Proyek 4 Deadline Proyek 416. Proyek 417. Ujian Akhir Semester
TextBook: Fokus pada Konsep
Buku teks untuk kuliah ini adalah
1. Andrew S. Tannenbaum and Maarten Van Steen, Distributed Systems: Principles
and Paradigms, 3nd E, Free, 2017.
2. George Coulouris, Jean Dollimore, Tim Kindberg, and Gordon Blair, Distributed
Systems: Concepts and Design, 5th E, Addison Wesley, 2011
Buku-buku lain mendukung dari sisi terapan (slide
berikutnya)
Java: Introduction
Java: Network Programming
Java: Web Services
Java: Microservices
Kuliah Berikutnya
• Kita akan membahas tren di sistem terdistribusi dan tantangan yang dihadapi saat merancang sistem tersebut
• Lakukan ini:• Baca C1 & T1
• Hadiri pertemuan berikutnya
• Praktik Mandiri (coba dan diskusi Kelompok)
• Pemrograman Berorientasi Obyek dengan Java
Pertanyaan?