Lifelogging is full of sensor monitoring using distributed sensor. Due to its important privacy aspect, saving such data on the cloud does not make a sense, if selectivly opened like posting a photo to FaceBook, otherwise we need a very robust and efficient method to sync data between sensors. Torrent was initially designed to share files between distributed computers using the Internet. Bittorrent Sync  is designed so using very similar technology to sync data (i.e. files) between different computing systems (Desktop, mobile and more including NAS servers). It looks as of now the best option for eLog project to sync files. This lab will further study the possiblity to use this technology to perform distributed queries transforming sync as the service  adding a virtualized wrapper over sync protocol.
Sync provides a web gui and has a hash to identify nodes on the network. It uses a central repository to coordinate connecting nodes. Pulse  is very similar to Sync but is opensource, BtSync is not .
After a few testing Pulse Android App (unofficial version) looks pretty unstable not user friendly (ex. crash in QR recognition, no stable connection). Pulse desktop binary version looks stable but failed in compiling from the source.
Bittorrent Sync is the choise of now (Nov 2014). I could easily synchronize three network-connected devices as one and archive them into the NAS server.
- BitTorrent Sync: http://www.getsync.com
- Pulse (previsouly Synchting): http://www.webupd8.org/2014/06/syncthing-open-source-bittorrent-sync.html
- Global discovery server for the syncthing project: https://github.com/syncthing/discosrv
- How is Pulse different to BitTorrent Sync?: https://pulse-forum.ind.ie/t/how-is-pulse-different-to-bittorrent-sync/1083
- BitTorrent Sync - Developer API: http://www.getsync.com/api
- Sync for distributed data synchronization and Owncloud for web interface: http://blog.bittorrent.com/2013/05/23/how-i-created-my-own-personal-cloud-using-bittorrent-sync-owncloud-and-raspberry-pi/