Multidimensional Range Queries in Sensor Networks - PowerPoint PPT Presentation

1 / 23
About This Presentation
Title:

Multidimensional Range Queries in Sensor Networks

Description:

Resolving undecided zone boundaries during ... If C has undecided boundaries, there may be zone overlap with another node ... Resolving Undecided Boundaries ... – PowerPoint PPT presentation

Number of Views:65
Avg rating:3.0/5.0
Slides: 24
Provided by: camarsK
Category:

less

Transcript and Presenter's Notes

Title: Multidimensional Range Queries in Sensor Networks


1
Multi-dimensional Range Queries in Sensor Networks
  • SenSys 03
  • Xin Li, Young Jin Kim, Ramesh Govindan, Wei Hong

2
Contents
  • Overview
  • Concepts and Technology
  • Event insertion
  • Range querying
  • Analysis of DIMs
  • Simulation
  • Conclusion

3
Overview of DIMs
  • Events (multi-dimensional space) are mapped onto
    zones of the network (2-d space)
  • Data Locality Events with comparable attribute
    values stored in same location in network
  • Locality-preserving geographic hash
  • Events are routed to and stored at that node
  • Queries are routed to and resolved by appropriate
    nodes

4
Zone
  • Rectangle R on x-y plane (entire network)
  • Subrectangle Z is a zone if Z is obtained by
    dividing R k times satisfying the following
    property
  • After the i-th division, 1 i k, R is
    partitioned into 2i equal rectangles. If i is odd
    (even), the division is parallel to the y-axis
    (x-axis).
  • k is the level of the zone, level(Z) k

5
Zone Identification
  • code(Z)
  • Bit string of length level(Z)
  • Starting from left of code string, if zone Z
    resides on the left half of R, bit equals 0, else
    1. For the next bit, if zone Z resides on the
    bottom half of R, bit is 0, else 1.
  • addr(Z)
  • Centroid of zone rectangle

6
Zone Terminology
  • Sibling subtree of a zone
  • Left/right subtree rooted at the same parent zone
  • Backup zone
  • If the sibling subtree of a node is on the left
    (right), its backup zone is the rightmost
    (leftmost) zone in its sibling subtree

7
Zones Example
8
Associating Zones with Nodes
  • Sensor field divided into zones, which can be of
    different sizes
  • Zone ownership
  • A owns ZA ? ZA is the largest zone that contains
    only node A
  • Some zones may not have node owner ? backup(Z) is
    the owner

9
Algorithm for Zone Ownership
  • Each node maintains its four boundaries
  • Initialize to network boundary
  • Send messages to learn locations of neighbors
  • If neighbor responds, node will adjust its
    boundaries accordingly
  • Else boundary is undecided
  • Undecided boundaries resolved during querying or
    event insertion

10
Event Insertion
  • Hashing an event to a zone
  • Routing an event to its owner
  • Resolving undecided zone boundaries during
    insertion

11
Event InsertionHashing an Event to a Zone
  • Have m attributes A1, A2, , Am and attribute
    values have been normalized
  • To hash a k-bit zone code to an event
  • For i in 1, m, if Ai lt 0.5, the ith bit of the
    zone code is 0, else 1.
  • For i in m1, 2m, if Ai-m lt 0.25 or 0.5 Ai-m
    lt 0.75, then the (i-m)th bit is 0, else 1.
  • Etc. until all k bits are assigned

12
Event InsertionHashing an Event to a Zone
  • Example Hash event lt0.3, 0.8gt to a 5-bit zone
    code
  • First range 0 0, 0.5)
  • Second range 0 0, 0.25), 0.5, 0.75)
  • Third range 0 0, 0.125), 0.25, 0.375), 0.5,
    0.625), 0.75, 0.875)
  • Zone code 01110

13
Event InsertionRouting an Event to its Owner
  • GPSR delivers message to node A
  • Message contains event E, code(E), target
    location, owner, location of owner,
  • A encodes the event to codenew(E)
  • Updates message if codenew(E) is longer than code
    in message
  • A checks if code(A) has longer match with code(E)
    than previous owner
  • If yes, update message by setting itself as the
    owner
  • If code(A) and code(E) identical and As
    boundaries are known, A is the owner of E and
    stores it
  • Else A will route E to its owner by invoking GPSR

14
Event InsertionResolving Undecided Boundaries
  • Suppose node C receives event E
  • If code(C) code(E) and all of Cs boundaries
    are known, C will store the event
  • If C has undecided boundaries, there may be zone
    overlap with another node
  • C sets itself as owner and forwards message using
    GPSR perimeter mode
  • If message not changed, it will come back to C
  • C assumes it is the owner and stores it

15
Event InsertionResolving Undecided Boundaries
  • An intermediate node X marks itself as the owner
    but code(E) is unchanged
  • X recognizes zone overlap with C and adjusts its
    boundaries and messages C to update its
    boundaries
  • An intermediate node D refines code(E)
  • D will try to deliver the message to the new zone
  • Another node X may overlap with C
  • X will shrink its zone and send C messages to do
    the same
  • C will update its undecided boundary

16
Event Insertion Example
  • Nodes A and B have claimed the same zone 0
  • Node A generates event E lt0.4, 0.8, 0.9gt,
    code(E) 0
  • Perimeter mode forwarding of event to B
  • B and A engage in message exchange to shrink
    zones

17
QueriesRouting and Resolving
  • Routing for point queries same as event
  • Range queries
  • query initially routed to zone corresponding to
    the entire range
  • progressively split into smaller sub-queries so
    each sub-query can be resolved by a single node

18
QueriesSplitting Queries
  • If the range of Qs first attribute contains
    value 0.5, A divides Q into two sub-queries, one
    with range 0 to 0.5, and the other 0.5 to 1
  • If QA , part of zone A that overlaps with query
    area, is empty, A stops splitting
  • Else A continues splitting the query using
    successive attribute ranges and recomputing QA
    until it is small enough to fit entirely in
    zone(A)

19
QueriesSplitting Queries Example
  • Suppose there is a node A with code(A) 0110
  • Split a query Q lt0.3?0.8, 0.6?0.9gt

20
QueryResolution
  • Once a sub-query falls into a zone, the node
    owner resolves the query and sends the reply to
    the querier
  • The other sub-queries are forwarded to other
    nodes

21
Analysis on DIMs
  • Metrics
  • Average insertion cost average number of
    messages required to insert an event into the
    network
  • Average query delivery cost average number of
    messages required to route a query message to all
    the relevant nodes
  • Compared against alternatives
  • GHT-R and flooding

22
Average Insertion Cost
23
Conclusion
  • Under reasonable assumptions about query
    distributions, DIMs scale quite well with network
    size (both insertion and query costs scale O(vN))
  • Work that still needs to be done
  • Skewed data distribution
  • Existential queries
  • Node heterogeneity
Write a Comment
User Comments (0)
About PowerShow.com