Home Storage


We believe that difficulty of management will be a showstopper for the growth of data storage in the home and that there is deep systems and user-interaction research required to alleviate it. The goal of the home storage management project is to build novel home storage infrastructures, automated management systems, and effective user interfaces that can, together, improve the manageability of home storage solutions.

One of the building blocks of the home storage management project is Perspective, a decentralized home storage system with manageability as a principal design point. Perspective uses a central construct called a view to keep data synchronized between devices. A view describes a set of objects in the semantic store in the form of a query on per-object metadata. For example, a simple view could specify every object, i.e., "*". More sophisticated views could specify all objects that are of a particular type, are newer than a particular date, or are owned by a particular user. In fact, a view can specify an arbitrary query on any extensible metadata in the system.

In Perspective, each device registers with the system one or more views that express the data objects that the device is interested in. Devices only store data that matches at least one of their views. Whenever data is created, modified, or deleted in the system, a notification of that update is sent to all devices with views that match the modified object. Each device sends a copy of all its views to all other devices, allowing each device to easily determine which other devices should receive a notification message.

Views simplify the task of storage management by enabling a wide variety of techniques (e.g., simple replication, efficient search, and flexible ensemble creation) in a way that is simple and understandable to a user. Views can provide a foundation for automated tools to set policy for storage management tasks. Using information about the number and type of available storage devices, potential workload, and user preferences, automated tools can find configurations that maximize reliability, accessiblity, and performance, and then configure the ensemble of devices by setting the views on each device. When the workload or infrastructure changes (e.g., when a device fails or is upgraded) an automation tool can, again, find the best new configuration to support the user's data and workload. Users will commonly share data both via the network and via portable devices, both within their own home and with users from other homes. Support for efficient search between any two devices, potentially owned by different users, is essential. Lastly, sharing introduces opportunities for compromising the security and privacy of a user's data, requiring protections (more management tasks!) that are both effective and intuitive.

Researchers


  • Steve Schlosser
  • Lily Mummert
  • Michael Kaminsky

Collaborators