Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Layanan Basis Data Real-Time NoSQL untuk Kolaborasi Web Audio Editor

Layanan Basis Data Real-Time NoSQL untuk Kolaborasi Web Audio Editor

Layanan Basis Data Real-Time NoSQL untuk Kolaborasi Web Audio Editor

Tugas Akhir

C918bcbfa8df32567636c2d125a34fa1?s=128

Sonny Lazuardi

April 22, 2015
Tweet

Transcript

  1. LAYANAN BASIS DATA REAL-TIMENOSQL UNTUK KOLABORASI WEB AUDIO EDITOR Disusun

    oleh: Sonny Lazuardi Hermawan (13511029) Pembimbing: Achmad Imam Kistijantoro, ST, M.Sc, Ph.D 1 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  2. Isi Presentasi 2 Pendahuluan Rancangan Solusi Implementasi Pengujian Penutup 4/22/2015

    Sonny Lazuardi/Tugas Akhir II
  3. Pendahuluan 3 4/22/2015 Sonny Lazuardi/Tugas Akhir II

  4. TeoriCAP 4 (Brewer, 2004) ACID BASE ACID 4/22/2015 Sonny Lazuardi/Tugas

    Akhir II
  5. Firebase Layanan basis data real- time cloud (Firebase) 5 Tanpa

    Back End Real- time Tidak Open Source Firebase is proprietary (Cherniavsky, 2013) 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  6. PouchDB Library Javascript untuk basis data yang tersinkronisasi 6 Offline

    State CouchDB Long Polling PouchDB.com 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  7. NoBackend 7 NoBackend adalah sebuah pendekatan untuk memisahkan aplikasi dengan

    back-end dengan cara mengabstraksikan tugas kepada kode front-end. (Martynus, 2013) 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  8. Audio Editor Digital Audio Workstation (DAW) Garage Band (Apple Inc.,

    2014) 8 Kolaborasi 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  9. (Apple Inc., 2014) 9 Audio Editor Digital Audio Workstation (DAW)

    Kolaborasi 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  10. Web Audio Editor 10 Arrangement Track 1 Track 2 global

    control interface Drum Machine Recording Piece track control panel Preview Synth Web Audio Editor (Monschke, 2014) 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  11. RumusanMasalah 11 Cluster Basis Data Server Session Client 1 Client

    2 Algoritma & Arsitektur Sinkronisasi Penyimpanan state offline Pembangunan Layanan Basis Data 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  12. RumusanMasalah 12 Cluster Basis Data Server Session Pembangunan Layanan Basis

    Data Chat Client 1 Chat Client 2 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  13. Tujuan 13 Membangun layanan basis data NoSQL real-time untuk Web

    Audio Editor Membandingkan kinerja algoritma dan arsitektur sinkronisasi efektif Menganalisis penyimpanan state saat offline 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  14. Batasan 14 Menggunakan aplikasi open source Web Audio Editor Format

    data yang disimpan berbentuk JSON Hak akses dan security tidak ditangani 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  15. RancanganSolusi 15 4/22/2015 Sonny Lazuardi/Tugas Akhir II

  16. AlgoritmaSinkronisasi 16 Operational Transformation (OT) Differential Synchronization (DS) Continuous Replication

    (CR) 4/22/2015 Sonny Lazuardi/Tugas Akhir II Konflik ambil versi terbaru
  17. Differential Synchronization 17 (Monschke, 2014) 4/22/2015 Sonny Lazuardi/Tugas Akhir II

  18. Continuous Replication 18 (Lawson, 2014) 4/22/2015 Sonny Lazuardi/Tugas Akhir II

  19. ArsitekturLayanan 19 Websocket (DS) Long Polling (CR) 4/22/2015 Sonny Lazuardi/Tugas

    Akhir II
  20. OptimasiLong Polling 20 4/22/2015 Sonny Lazuardi/Tugas Akhir II Stream Replication

    via Websocket
  21. Implementasi 21 4/22/2015 Sonny Lazuardi/Tugas Akhir II

  22. Tools & Library 4/22/2015 Sonny Lazuardi/Tugas Akhir II 22

  23. LingkunganImplementasi 4/22/2015 Sonny Lazuardi/Tugas Akhir II 23 Digital Ocean •

    Lokasi Singapura • Processor Intel Hex-Core CPUs • Memory 512MB RAM • SSD Disk 20GB • Sistem Operasi Ubuntu 14.04
  24. Offline State 24 4/22/2015 Sonny Lazuardi/Tugas Akhir II

  25. Client Caching 25 Alur Kerja Pengguna mengedit dokumen online Pengguna

    mengedit dokumen offline Pengguna Online Sinkronisasi dokumen State offline disimpan di klien secara lokal ya tidak • Replikasi • Trigger Update IndexedDB 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  26. Resource Caching 26 4/22/2015 Application Cache HTML5 File API Sonny

    Lazuardi/Tugas Akhir II
  27. API & Service 27 4/22/2015 Sonny Lazuardi/Tugas Akhir II

  28. API & Service 28 DB Get() Put() Service On() Sync()

    Replicate() Add() Bind() Remove() 4/22/2015 Sonny Lazuardi/Tugas Akhir II Change Paused Active Error
  29. Pengujian 29 4/22/2015 Sonny Lazuardi/Tugas Akhir II

  30. PengujianFungsional (demo) 30 4/22/2015 Sonny Lazuardi/Tugas Akhir II

  31. PengujianNon Fungsional 31 4/22/2015 Sonny Lazuardi/Tugas Akhir II

  32. Kinerja(Arsitektur) 32 4/22/2015 Sonny Lazuardi/Tugas Akhir II Rata-rata waktu sinkronisasi

    (ms) Websocket (DS) 154.81ms Long Polling (CR) 775.74 ms Stream Replication (SR) 40.35ms
  33. RencanaPengujian 33 4/22/2015 Sonny Lazuardi/Tugas Akhir II Maksimum Pengguna Konkuren

    Maksimum Request Memory & CPU Usage
  34. Penutup 34 4/22/2015 Sonny Lazuardi/Tugas Akhir II

  35. Kesimpulan Sementara Layanan ini dapat mendukung • penyimpanan saat offline

    state • sinkronisasi data pada klien • API dan service pada front-end Sinkronisasi paling efektif adalah continuous replication dengan replication stream 35 4/22/2015 Sonny Lazuardi/Tugas Akhir II
  36. TERIMA KASIH. 36 4/22/2015 Sonny Lazuardi/Tugas Akhir II