Check out the new USENIX Web site. next up previous
Next: Adaptation in PRESTO Up: PRESTO: Feedback-driven Data Management Previous: Failure Detection


PRESTO Sensor

PRESTO sensors perform three tasks: (i) use the model predictions to determine which observations to push, (ii) maintain a local archive of all observations, and (iii) respond to pull requests from the proxy.

The PRESTO sensor acts as a mirror for the prediction model at the proxy--both the proxy and the sensor execute the model in a completely identical fashion. Consequently, at each sampling instant, the sensor knows the exact estimate of the sampled value at the proxy and can determine whether the estimate is accurate. Only those samples that deviate significantly from the prediction are pushed. As explained earlier, the proxy transmits all the parameters of the model to each sensor during system initialization. In addition, the proxy also specifies a threshold $ \delta$ that defines the worst-case deviation in the model prediction that the proxy can tolerate. Let $ X_t$ denote the actual observation at time $ t$ and let $ \hat{X}_t$ denote the predicted value computed using Equation 3. Then,

If $\displaystyle \vert \hat{X}_t - X_t \vert > \delta,$   $\displaystyle \mbox{Push $X_t$\ to Proxy}$$\displaystyle .$ (6)

As indicated earlier, computation of $ \hat{X}_t$ using Equation 3 involves reading of a few past values such as $ X_{t-S}$ from the archive in flash storage and a few floating point multiplications and additions, all of which are inexpensive.

PRESTO sensors archive all sensed values into an energy-efficient NAND flash store; the flash archive is a log of tuples of the form: $ (t, X_t, \hat{X}_t, e_t)$. A simple index is maintained to permit random access to any entry in the log. A pull request from a proxy involves the use of this index to locate the requested data in the archive, followed by a read and a transmit.


next up previous
Next: Adaptation in PRESTO Up: PRESTO: Feedback-driven Data Management Previous: Failure Detection
root 2006-03-29