Lazy Approaches for Interval Timing Correlation of Sensor Data Streams
<p>(a) The upper-bounds and the lower-bounds of satisfaction probabilities (b) Efficient filtering process using the bounds.</p> ">
<p>Efficient probing example.</p> ">
<p>The execution times under various arrival rates.</p> ">
<p>The average response times under various arrival rates.</p> ">
<p>Average lengths of stream buffers.</p> ">
<p>The execution times under different correlation block sizes.</p> ">
<p>The hit ratio of the look-up table under different correlation block sizes.</p> ">
<p>The execution times under various confidence thresholds.</p> ">
<p>The interval timing correlation with high and low confidence thresholds.</p> ">
Abstract
:1. Introduction
- Extending the algorithm by adopting a lazy evaluation approach: We extend the previously designed algorithm by adopting a lazy approach and correlating the sensor data by the blocks.
- Extending the algorithm by adding the look-up technique: In order to avoid expensive calculation for satisfaction probability in probe regions, we add an idea of look-up technique based on new observations of the timing correlation.
2. Related Work
3. Timing Correlation for Sensor Data
4. Design of Timing Correlation Operators
4.1. Efficient Timing Correlation
- Any target tuple with the timestamp I where max(I) ∈ [LL, RL] is guaranteed to satisfy the given timing condition.
- Any target tuple with the timestamp I where max(I) < LH is guaranteed to violate the given timing condition.
- Any target tuple with the timestamp I where max(I) > RH is guaranteed to violate the given timing condition.
- Any target tuple with the timestamp I where max(I) ∈ [LH, LL) needs an evaluation of the satisfaction probability.
- Any target tuple with the timestamp I where max(I) ∈ (RL, RH] needs an evaluation of the satisfaction probability.
4.2. Algorithms for Interval Timing Correlation
1: | for all tuple e in the target buffer do |
2: | if (ct ≤ prob(|@enew − @e| ≤ d)) then |
3: | Add (enew, e) to the result |
4: | end if |
5: | Mark e if it is obsolete. |
6: | end for |
7: | Remove the marked obsolete tuples in the target buffer. |
8: | Insert enew into the end of base buffer. |
1: | Compute LH, LL, RL, and RH based on enew |
2: | for all tuple e belongs to [LL, RL] in the target buffer do |
3: | Add (enew, e) to the result |
4: | end for |
5: | for all tuple e belongs to [LH, LL) or (RL, RH] in the target buffer do |
6: | Probe(enew, e, d, ct) |
7: | end for |
8: | Invalidate obsolete tuples in the target buffer by LH (einv). |
9: | Insert enew into the base buffer in a sorted order. |
1: | if ct ≤ prob(|@enew − @e| ≤ d) then |
2: | Add (enew, e) to the result |
3: | end if |
1: | Insert enew into the end of base buffer. |
2: | if there are “enough” tuples then |
3: | call BlockTimingCorrelation(BaseStream) |
4: | end if |
1: | Sort the target stream buffer |
2: | tpl ← the first tuple in the unprocessed block in the base stream buffer |
3: | tpr ← the last tuple in the unprocessed block in the base stream buffer |
4: | for enew = tpr to tpl in the base stream buffer do |
5: | Compute LH, LL, RL, and RH based on enew |
6: | for all tuple e in [LL, RL] in the sorted block of the target stream buffer do |
7: | AddResult(enew, e) |
8: | end for |
9: | for all tuple e in [LH, LL) or (RL, RH] in the sorted block of the target stream buffer do |
10: | Probe(enew, e, d, ct) |
11: | end for |
12: | end for |
13: | Sort the base stream buffer |
14: | Invalidate obsolete tuples in the base buffer by LH (einv). |
15: | Invalidate obsolete tuples in the target buffer by LH (einv). |
1: | Sort the target stream buffer |
2: | tpl ← the first tuple in unprocessed block in the base stream |
3: | tpr ← the last tuple in unprocessed block in the base stream |
4: | for enew = tpr to tpl in the base stream buffer do |
5: | Compute LL, RL based on enew |
6: | for all tuple e belongs to [LL, RL] in the sorted block of the target buffer do |
7: | Add (enew, e) to the result |
8: | end for |
9: | end for |
10: | leftindex ← the index for LH(max(@tpl) – π, max(@tpl)) in the target stream buffer |
11: | rightindex ← the index for LL(max(@tpr) – ρ, max(@tpr)) in the target stream buffer |
12: | Initialize look-up table (leftindex, rightindex) |
13: | for enew = tpr downto tpl in the base stream buffer do |
14: | Compute LH, LL, based on enew |
15: | for all tuple e belongs to [LH, LL) in the target buffer do |
16: | EfficientProbe(enew, e, d, ct, BaseStream) |
17: | end for |
18: | end for |
19: | Initialize look-up table (leftindex, rightindex) |
20: | for enew = tpl to tpr in the base stream do |
21: | Compute RL, RH, based on enew |
22: | for all tuple e belongs to (RL, RH] in the target buffer do |
23: | EfficientProbe(enew, e, d, ct, BaseStream) |
24: | end for |
25: | end for |
26: | Invalidate obsolete tuples in the base buffer by LH (einv). |
27: | Invalidate obsolete tuples in the target buffer by LH (einv). |
1: | if the result in the look-up table is usable then |
2: | c ← lookup(e) |
3: | if c = notInit then |
4: | Probe(enew, e, d, ct) |
5: | SetLookup(prob(|@enew – @e| ≤ d), e) |
6: | else |
7: | if c ≥ ct then |
8: | Add (enew, e) to the result |
9: | else |
10: | Probe(enew, e, d, ct) |
11: | end if |
12: | end if |
13: | else |
14: | Probe(enew, e, d, ct) |
15: | SetLookup(prob(|@enew – @e| ≤ d), e) |
16: | end if |
5. Experiment and Analysis
5.1. Experiment Results
6. Summary
Acknowledgments
References
- Dyreson, C.E.; Snodgrass, R.T. Supporting Valid-time Indeterminacy. ACM Trans. Database Syst 1998, 23, 1–57. [Google Scholar]
- Babcock, B.; Babu, S.; Datar, M.; Motwani, R.; Widom, J. Models and Issues in Data Stream Systems. Proceedings of the ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems, Madison, WI, USA, June 3–5, 2002; pp. 1–16.
- Golab, L.; Ozsu, M.T. Issues in Data Stream Management. SIGMOD Rec 2003, 32, 5–14. [Google Scholar]
- Abadi, D.J.; Carney, D.; Cetintemel, U.; Cherniack, M.; Convey, C.; Lee, S.; Stonebraker, M.; Tatbul, N.; Zdonik, S.B. Aurora: A New Model and Architecture for Data Stream Management. VLDB J 2003, 12, 120–139. [Google Scholar]
- Hammad, M.A.; Aref, W.G.; Elmagarmid, A.K. Stream Window Join: Tracking Moving Objects in Sensor-network Databases. Proceedings of the 15th International Conference on Scientific and Statistical Database Management, Cambridge, MA, USA, July 9–11, 2003; pp. 75–84.
- Kang, J.; Naughton, J.F.; Viglas, S. Evaluating Window Joins over Unbounded Streams. Proceedings of the 19th International Conference on Data Engineering, Bangalore, India, March 5–8, 2003; pp. 341–352.
- Srivastava, U.; Widom, J. Flexible Time Management in Data Stream Systems. Proceedings of the ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems, Paris, France, June 14–16, 2004; pp. 263–274.
- Wu, J.; Tan, K.L.; Zhou, Y. Data-Driven Memory Management for Stream Join. Inform. Syst 2009, 34, 454–467. [Google Scholar]
- Lee, C.G.; Mok, A.K.; Konana, P. Monitoring of Timing Constraints with Confidence Threhold Requirements. Proceedings of IEEE Real-Time Systems Symposium(RTSS), Cancun, Mexico, December 3–5, 2003; pp. 178–187.
- Lee, C.G.; Mok, A.K.; Konana, P. Monitoring of Timing Constraints with Confidence Threshold Requirements. IEEE Trans. Comput 2007, 56, 977–991. [Google Scholar]
- Lee, C.G.; Mok, A.K.; Konana, P. Online Timing Correlation of Streaming Data with Uncertain Timestamps. IEICE Trans. Inform. Systems 2009, E92-D, 1260–1267. [Google Scholar]
- Golab, L.; Ozsu, M.T. Processing Sliding Window Multi-Joins in Continuous Queries over Data Streams. Proceedings of the International Conference on Very Large Data Bases(VLDB), Berlin, Germany, September 9–12, 2003; pp. 500–511.
© 2010 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).
Share and Cite
Lee, K.; Lee, C.-G. Lazy Approaches for Interval Timing Correlation of Sensor Data Streams. Sensors 2010, 10, 5329-5345. https://doi.org/10.3390/s100605329
Lee K, Lee C-G. Lazy Approaches for Interval Timing Correlation of Sensor Data Streams. Sensors. 2010; 10(6):5329-5345. https://doi.org/10.3390/s100605329
Chicago/Turabian StyleLee, Kiseong, and Chan-Gun Lee. 2010. "Lazy Approaches for Interval Timing Correlation of Sensor Data Streams" Sensors 10, no. 6: 5329-5345. https://doi.org/10.3390/s100605329
APA StyleLee, K., & Lee, C.-G. (2010). Lazy Approaches for Interval Timing Correlation of Sensor Data Streams. Sensors, 10(6), 5329-5345. https://doi.org/10.3390/s100605329