Abstract
We consider the problem of evaluating continuous selection queries over sensor-generated values in the presence of faults. Small sensors are fragile, have finite energy and memory, and communicate over a lossy medium; hence, tuples produced by them may not reach the querying node, resulting in an incomplete and ambiguous answer, as any of the non-reporting sensors may have produced a tuple which was lost. We develop a protocol, FAult Tolerant Evaluation of Continuous Selection Queries (FATE-CSQ), which guarantees a user-requested level of quality in an efficient manner. When many faults occur, this may not be achievable; in that case, we aim for the best possible answer, under the query's time constraints. FATE-CSQ is designed to be resilient to different kinds of failures. Our design decisions are based on an analytical model of different fault tolerance strategies based on feedback and retransmission. Additionally, we evaluate FATE-CSQ and competing protocols with realistic simulation parameters under a variety of conditions, demonstrating its good performance.
Notes
1This corresponds to step (1) of the protocol for Transmitting Data. Of course, a tuple may be retransmitted more than once if the CFV itself is lost.
2 N s can be piggy-backed on other packets transmitted to one's parent, e.g., Yes tuples to save communication effort.
3The relationship is not, however, entirely linear. For example, a message may take longer to reach a parent with many children (longer round size).
4The justification for using m is the following: the message must clear one less hop (k − 1 vs. k). However, transmitting the value in the first hop itself consumes one message time. Hence, the system has enough time to afford the same number of retries for q as for s.