  With the proliferation of sensor and personal devices, our physical spaces
are now awash in potential data sources. In principle this data could serve a
wide range of applications and services. However, leveraging these data sources
is challenging with today's systems because they are not typically designed to
consume data opportunistically, from a new device that happens to arrive in the
vicinity.
  In this paper, we present the design and implementation of Jut, a system
designed for "Just-in-Time" data access - in which an application is able to
discover and consume data from any available source, even ones not known at
development or installation time. Jut combines two novel design choices:
modularizing data processing systems to better reflect the physical world, and
a new form of application-data integration that equips data processing
pipelines with the information they need to process new and evolving data
formats and schemas. We show that these choices greatly simplify the
development and use of smart-space and IoT applications. For a representative
set of devices and application scenarios, we show that Jut can implement
use-cases not easily supported today, or can do so with 3.2-14.8x less
development effort and 3-12x lower query complexity than current systems.

Databases