Database-Centric Programming for Wide-Area Sensor Systems 1 2 1 2 Shimin Chen , Phillip B. Gibbons , and Suman Nath ; 1 Carnegie Mellon University fchensm,
[email protected] 2 Intel Research Pittsburgh
[email protected] Abstract. A wide-area sensor system is a complex, dynamic, resource-rich col- lection of Internet-connected sensing devices. In this paper, we propose X-Tree Programming, a novel database-centric programming model for wide-area sen- sor systems designed to achieve the seemingly conflicting goals of expressive- ness, ease of programming, and efficient distributed execution. To demonstrate the effectiveness of X-Tree Programming in achieving these goals, we have in- corporated the model into IrisNet, a shared infrastructure for wide-area sensing, and developed several widely different applications, including a distributed in- frastructure monitor running on 473 machines worldwide. 1 Introduction A wide-area sensor system [2, 12, 15, 16] is a complex, dynamic, resource-rich collec- tion of Internet-connected sensing devices. These devices are capable of collecting high bit-rate data from powerful sensors such as cameras, microphones, infrared detectors, RFID readers, and vibration sensors, and performing collaborative computation on the data. A sensor system can be programmed to provide useful sensing services that com- bine traditional data sources with tens to millions of live sensor feeds. An example of such a service is a Person Finder, which uses cameras or smart badges to track people and supports queries for a person's current location. A desirable approach for develop- ing such a service is to program the collection of sensors as a whole, rather than writing software to drive individual devices.