A decentralized file synchronization tool
Nástroj pro decentralizovanou synchronizaci souborů
bakalářská práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/90457Identifikátory
SIS: 177535
Kolekce
- Kvalifikační práce [10932]
Autor
Vedoucí práce
Oponent práce
Hušek, Radek
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Obecná informatika
Katedra / ústav / klinika
Katedra aplikované matematiky
Datum obhajoby
6. 9. 2017
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Výborně
Klíčová slova (česky)
synchronizace souborů, set reconciliation, fanotifyKlíčová slova (anglicky)
file synchronization, set reconciliation, fanotifyV práci zkoumáme problém synchronizace souborů s cílem zlepšení efek- tivity, škálovatelnosti, robustnosti, flexibility a bezpečnosti současných syn- chronizačních nástrojů. Vyřešíme několik podstatných podproblémů, které tomuto mohou pomoci, zejména v oblasti sledování změn souborového systému (online i offline) a peer-to-peer synchronizace souborových metadat. Ukážeme techniky pro rychlejší a spolehlivější hledání změn v souborových systémech. Rozšíříme fanotify, rozhraní linuxového jádra pro oznamování změn v sou- borovém systému, tak, aby dokázalo oznamovat více druhů událostí, zejména přejmenování souborů. Představíme originální řešení několika variant problému set reconciliation (synchronizace množin) a aplikujeme je na synchronizaci metadat. 1
We explore the problem of file synchronization, with the goal of improving on the efficiency, scalability, robustness, flexibility and security of current file synchronization tools. We solve several important subproblems that may help this, especially in the areas of filesystem change detection (both online and offline) and peer-to-peer synchronization of file metadata. We show techniques to make scanning a file system for changes faster and more reliable. We extend the Linux kernel's 'fanotify' filesystem change notification API to report more events, especially renames. We present several original solutions to the set reconciliation problem and its variants and apply them to metadata synchronization. 1