Download presentation
Presentation is loading. Please wait.
Published bySára Pospíšilová Modified over 5 years ago
1
The Threshold Join Algorithm for Top-k Queries in Distributed Sensor Networks
D. ZeinalipourYazti, Z. Vagena, D. Gunopulos, V. Kalogeraki, V. Tsotras, M. Vlachos, N. Koudas, D. Srivastava Cathy Wang
2
Outline Introduction Problem Definition The TJA Algorithm Conclusion
3
Introduction Works for distributed sensor networks
Finds the k highest ranked answers Minimizes the number of tuples to be transferred Resolves queries in the network – minimize the consumption of bandwidth and delay
4
Problem Definition R: n attributes (sensors) each featuring m objects
G(V, E): network graph that interconnects the n vertices in V using the edge set E. v1 Oid, val v2 v3 v4 v5 TOP-5 O3, .99 O1, .91 O1, .92 O3, .74 O3, .67 O3, 4.05/5=.81 O1, .66 O3, .90 O3, .75 O1, .56 O4, .67 O1, 3.63/5=.73 Oo, .63 Oo, .61 O4, .70 O2, .56 O1, .58 O4, 2.07/5=.41 O2, .48 O4, .07 O2, .16 Oo, .28 O2, .54 O0, 1.88/5=.32 O4, .44 O2, .01 Oo, .01 O4, .19 Oo, .35 O2, 1.75/5=.29 V1 V2 V3 V4 V5 The local scores of five objects o1..o5 which are located at nodes v1..v5 network graph G
5
Problem Definition Q = (q1, q2, , qn), a top-k query with n attributes. Score function – monotone: ex: o1:(s1=100F, s2=90F, s3=80F) and o2:(s1=100F, s2=70F, s3=80F), wj=1, sim(qj, oij) represents the percentage of similarity to the most similar object in dimension j. The top-1 object to the query Q=(max(temp), max(temp), max(temp)), would be o1 because Score(o1)=3.0 (i.e. 1* * *1.0) and Score(o2)=2.77 (i.e. 1* * *1.0) wj: weight factor
6
The TJA Algorithm Three phases:
Lower Bound phase – construct a threshold Hierarchical Joining phase – each node eliminates objects below the lower bound, and joins qualifying objects from children nodes Clean-Up phase – actual top-k results are identified
7
Lower Bound Phase Identify a set of objects that are used to construct a threshold list(vi): descending similarity ordered elements of node vi listk(vi): k local highest ranked objects of list(vi) L(vi): partial lower bound: Complete lower bound: LqueryNode=Ltotal={l1, l2,…, lo}, o ≥ k V1 V2 V3 V4 V5 O3, .99 O1, .91 O1, .92 O3, .74 O3, .67 O1, .66 O3, .90 O3, .75 O1, .56 O4, .67 O0, .63 O0, .61 O4, .70 O2, .56 O1, .58 O2, .48 O4, .07 O2, .16 O0, .28 O2, .54 O4, .44 O2, .01 O0, .01 O4, .19 O0, .35 U 1,2,3,4,5 Ltotal {1,3} V1 2,3,4,5: V2 U 2,3 4,5 3: 4,5: V3 V4 U 4 5 Empty Oij Occupied Oij Ex: Find the time moment with the highest average temperature 5: V5
8
Hierarchical Joining Phase
Propagate Ltotal to all nodes in the network Each node vi search list(vi), and identify the lowest ranked object (idx) belong to Ltotal. Objects above idx are candidates listidx(vi) Forward listidx(vi) to parent if vi is a leaf node, else Receives listidx(vj) from its children, and get a partial result: Superset of the final top-k result: RqueryNode=Rtotal={r1, r2,…, ro}, o ≥ k ex: Rtotal={(O1, 3.63),(O3, 4.05),(O’4, 3.54)} V1 V2 V3 V4 V5 O3, .99 O1, .91 O1, .92 O3, .74 O3, .67 O1, .66 O3, .90 O3, .75 O1, .56 O4, .67 Oo, .63 Oo, .61 O4, .70 O2, .56 O1, .58 O2, .48 O4, .07 O2, .16 Oo, .28 O2, .54 O4, .44 O2, .01 Oo, .01 O4, .19 Oo, .35 U 1,2,3,4,5 + Rtotal {1,3,4} V1 2,3,4,5: V2 U 2,3 4,5 + 4,5: 3: V3 V4 U 4 5 + Empty Oij 5: V5 Occupied Oij Occupied Oij
9
Clean-Up Phase If objects have upper bound higher than the k-th complete result, compute the exact scores of these objects by: request exact score from its children objectR’(vi): fetch all objects in R’. join lists from children and get the full score for each object in R’, Ctotal. get Ctotal, and compute the final top-k answers.
10
Conclusion This paper studies the problem of finding the k highest rank answers to user query in a sensor network environment. uses a fixed number of phases. deploys in-network aggregation to minimize the utilization of the network.
11
Thank You! Have a great break!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.