180 likes | 192 Views
quFiles: a unifying abstraction for mobile data management. Kaushik Veeraraghavan* Ed Nightingale † Jason Flinn* Brian Noble* * University of Michigan † Microsoft Research (Redmond). Mobility is problematic. Bandwidth & Latency. Platform diversity. Battery lifetime. Trust.
E N D
quFiles: a unifying abstraction for mobile data management Kaushik Veeraraghavan* Ed Nightingale† Jason Flinn* Brian Noble* * University of Michigan † Microsoft Research (Redmond)
Mobility is problematic Bandwidth & Latency Platform diversity Battery lifetime Trust Each solution implemented in isolation Kaushik Veeraraghavan, HotMobile '08 2
Energy-aware adaptation Odyssey Plumber (redaction) Why are they really the same? • Observation: monolithic re-implementations of same idea • Idea: select representation of data based on context Kaushik Veeraraghavan, HotMobile '08
Multiplexes different views of a single logical object Implemented as a new file system object Encapsulates messy details of logical object Context-aware mechanism to select the best view Representation selected by a file system extension Context: battery status, connectivity, screen size … quFiles: a unifying abstraction Kaushik Veeraraghavan, HotMobile '08 4
Example: Format replication Kaushik Veeraraghavan, HotMobile '08 5
quFiles provide context-aware views quFile resolves to application-specific representation Kaushik Veeraraghavan, HotMobile '08 6
Outline Motivation Design & Implementation Applications Open questions Conclusion Kaushik Veeraraghavan, HotMobile '08 7
Goals Transparency File system encapsulates concrete details Backwards compatibility No application modification Simplicity No extensive file system changes Extensibility Application-specific policy Kaushik Veeraraghavan, HotMobile '08 8
BlueFS Server Background: BlueFS • Blue File System [OSDI ’04] • Distributed file system • Supports mobile clients including CEDs Kaushik Veeraraghavan, HotMobile '08
Transparency Transcoder creates and populates quFile Transformations (delete, move etc.) Applied to both the original file and its transcodings Photo Transcoder Kaushik Veeraraghavan, HotMobile '08 10
Simplicity quFiles are just special directories Distinguished via FS mode or name Contain names and references to file system objects Re-use existing directory code BlueFS kernel: 444 LOC File system modifications Readdir & Lookup Policy determines object name, version Modify lookup to check dirent within quFile Kaushik Veeraraghavan, HotMobile '08 11
quFile includes a link to resolution policy Policy runs in file system namespace Sprockets [USENIX ’07] New form of software-fault-isolation Safely execute dynamic plugins Easy to write 6 application policies average 160 LOC Extensibility Kaushik Veeraraghavan, HotMobile '08 12
Trade storage space for power Cache larger, power-efficient WAV with mp3 11% battery lifetime gain on an iPAQ Application: Resource management mp3 WAV WAV Kaushik Veeraraghavan, HotMobile '08 13
Resource-Aware Directories Dynamic directory listing Only list files that are viewable given current constraints NULL Kaushik Veeraraghavan, HotMobile '08 14
Odyssey Different clients; connected at different bitrates Each view different version of video Gimme my PhD! NULL Kaushik Veeraraghavan, HotMobile '08 15
Open Questions What other applications can quFiles support? Can we compose data management policies? How should conflicts be resolved? Should policies be assigned priorities? Kaushik Veeraraghavan, HotMobile '08 16
More open questions What if users want to edit lower-fidelity files? Default: deny edits Exceptions Lossless Metadata (e.g.: id3) Permitted if application provides policy Kaushik Veeraraghavan, HotMobile '08 17
quFiles A unifying abstraction Multiplexes different views onto single logical object Context-aware mechanism to select the best view Easy to incorporate in file system Easy to add new policies Questions? Conclusion Kaushik Veeraraghavan, HotMobile '08 18