Rozdílové aktualizace dat
Differential data updates
Typ dokumentu
diplomová prácemaster thesis
Autor
Matyáš Neuvirt
Vedoucí práce
Žára Ondřej
Oponent práce
Rechtberger Václav
Studijní obor
Softwarové inženýrstvíStudijní program
Otevřená informatikaInstituce přidělující hodnost
katedra počítačůPráva
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmlVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html
Metadata
Zobrazit celý záznamAbstrakt
Práce studuje možnosti synchronizace mezi několika klienty a autoritativním serverem v reálném čase. Velký důraz je kladen na minimalizaci množství přenášených informací a krátkou prodlevu pro obdržení aktuálního stavu. Výsledkem práce je framework NewSync využívající rozdílových aktualizací podpořených dalšími technikami ke snížení objemu posílaných informací s co nejvyšší mírou automatizace procesu detekování změn ve stavu aplikace. U několika formátů byla zkoumána efektivita jejich komprese. Pro potřeby webové aplikace se nejvhodnějším formátem stal MessagePack. Pro automatizaci detekce změn bylo využito nativní Proxy API v Javascriptu. Dále je popsáno, jaká struktura zpráv zanechává nejmenší paměťovou stopu. Součástí řešení je i aplikace, která demonstruje integraci a používání frameworku. Na závěr je porovnán objem dat nutných pro synchronizaci kompletními aktualizacemi ve formátu JSON v kontrastu se synchronizačními zprávami frameworku NewSync a časová náročnost spojená s automatickou detekcí změn. This thesis studies options of synchronisation between multiple clients and an authoritative server in real time. Great care is taken to minimise the amount of data transferred and to keep the delay between receiving the current state to a minimum. The goal is to create a framework that will use differential updates and other techniques to minimise network bandwidth with an emphasis on automating the difference detection. Many formats were tested for their ability to compress data effectively. In the context of web applications MessagePack ended up showing the best results. The process of automatic differences detection is driven by Proxy API which is natively present in the JavaScript language. Furthermore, we discuss efficient message structure that leaves smaller memory footprint. The solution also includes an application that demonstrates the integration and use of the framework. Lastly, the amount of data required for synchronisation via complete updates is compared to synchronisation data generated by the NewSync framework in respect to performance requirements for the automatic difference detection.
Kolekce
- Diplomové práce - 13136 [902]