350 likes | 474 Views
KDDCS: A Load-Balanced In-Network Data-Centric Storage Scheme for Sensor Networks. Mohamed Aly In collaboration with Kirk Pruhs and Panos K. Chrysanthis Advanced Data Management Technologies Lab Dept. of Computer Science University of Pittsburgh ACM CIKM 2006.
E N D
KDDCS: A Load-Balanced In-Network Data-Centric Storage Scheme for Sensor Networks Mohamed Aly In collaboration with Kirk Pruhs and Panos K. Chrysanthis Advanced Data Management Technologies Lab Dept. of Computer Science University of Pittsburgh ACM CIKM 2006
Disaster Management Sensor Networks • Sensors are deployed to monitor the disaster area. • First responders moving in the area issue ad-hoc queries to nearby sensors. • The sensor network is responsible for answering these queries. • First responders use query results to improve the decision making process in the management process of the disaster.
Where to Store Sensor Readings?? • In-Network storage • Events are temporarily stored in the sensor nodes. • Best suited for ad-hoc queries issued from users roaming within the network service area. • All in-Network storage schemes presented in literature are Data Centric Storage schemes. • Why not simply Local Storage??
Data-Centric Storage (DCS) • Quality of Data (QoD) of ad-hoc queries • Define an event owner based on the event value • Examples: • Distributed Hash Tables (DHT) [Shenker et. al., HotNets’03] • Geographic Hash Tables (GHT) [Ratsanamy et. al., WSNA’02] • Distributed Index for Multi-dimensional data (DIM)[Li et. al., SenSys’03] • Greedy Perimeter Stateless Routing algorithm (GPSR)[Karp & Kung, Mobicom’00] • Among the above schemes, DIM has been shown to exhibit the best performance
Problem Statement: Storage Hot-Spots in DCS Schemes • Definition: A storage hot-spot occurs when relatively many events are assigned to a small number of sensors. • Causes:Irregular data distribution and/or non-uniform sensor deployment. S1 x є [1,10] S2 x є [10,20] 50% 7% S4 x є [30,40] 40% S3 x є [20,30] 3%
Roadmap • Motivating Application:Disaster Management • Data-Centric Storage (DCS) • Problem Statement:Storage Hot-spots • Previous Solutions: • The Zone Sharing algorithm (ZS) running on top of DIM • The K-D Tree Based DCS scheme (KDDCS) • Experimental Results • Conclusions
Roadmap • Motivating Application:Disaster Management • Data-Centric Storage (DCS) • Problem Statement:Storage Hot-spots • Previous Solutions: • The Zone Sharing algorithm (ZS) running on top of DIM • The K-D Tree Based DCS scheme (KDDCS) • Experimental Results • Conclusions
Distributed Index for Multi-Dimensional Data (DIM) • Distributed physical address assignment • Event to bit-code mapping S2 x є [10,20] y є [1,10] S1 x є [1,10] y є [1,20] Z = 10 S3 x є [10,20] y є [10,20] Z = 0 Z = 11 S1 A = 0 S2 S3 A = 10 A = 11
Zone Sharing [Aly et al., DMSN’05] • A hot-spot detection and decomposition scheme. • Each sensor regularly compares its storage load with that of its neighbors. • In case a hot-spot is detected, logical node migration takes place in the K-D tree. • Ability to cope with small to medium storage hot-spots.
Roadmap • Motivating Application: Disaster Management • Data-Centric Storage (DCS) • Problem Statement: Storage Hot-spots • Previous Solutions • The Zone Sharing algorithm running on top of DIM • The K-D Tree Based DCS scheme (KDDCS) • Experimental Results • Conclusions
K-D Tree Based DCS Scheme (KDDCS) • Maps the sensor network into a k-d tree as in DIM. • Motivation: Hot-spot “avoidance” instead of “hot-spot detection and decomposition”. • How?? • Keep the K-D tree balanced all the time.
KDDCS versus DIM Z = 00010 Z = 0010 Orphan Zone Z = 000 Z = 00011 Z = 000 Z = 010 Z = 0010 Z = 0011 Z = 0110 Z = 01111 Z = 001 Z = 0011 Z = 110 Orphan zone Z = 1000 Z = 1001 Z = 100 Z = 101 Z = 111 Z = 11 Z = 1010 Z = 1011 DIM resulting k-d tree KDDCS resulting k-d tree with Non-uniform Split Points
KDDCS Balanced Tree Z = 0010 Z = 000 Z = 001 Z = 0011 Z = 110 Z = 100 000 001 010 011 100 101 110 111 Z = 101 Z = 111
KDDCS Abstracted Theoretical Problem • The Weighted Split Median Problem: • Each sensor si has an associated value, wi • W is the sum of all values wi • Goal: sensors to agree on a split value V such that approximately half of the values are larger than V and half of the values are smaller than V • A Distributed Algorithm for the Problem: • Time complexity: • O(log n) times the network diameter D • O(1) times network diameter if the number of sensors is known a priori within a constant factor • Messaging complexity: • Each sensor sends O(log n) sensor IDs
Top Level Steps of the Algorithm • Elect a leader sl and form a BFS tree T routed at sl of the network • The number of sensors n and the aggregate of values W are reported to sl • The leader sl collects a log-sized uniform random sample L of the values such that the expected number of times that a value from sensor si included in the sample is around (wi . Log n) / W • The value V is then the median of the reported values in L • sl reports V to all sensors
KDDCS Components • Distributed logical address assignment algorithm • Partitioning the region horizontally/vertically by running the algorithm on node y/x coordinates • Appending addresses of nodes falling above/below (left/right to) splitting line with 0/1 rightmost bit • Reiterating till each node falls by itself in a region (algorithm applied in parallel for different regions) • Event to bit-code mapping • Use a pre-known distribution of the events or assume storage is uniformly distributed as an easy startup choice • Assign ranges to nodes in a way to balance storage among nodes based on the use of non-uniform split points
KDDCS Components • Definition: Node Storage • Its pertinent information and that of all its ancestors in the tree • The pertinent information of a node is: • Geographic region covered • Split line separating its two children • The attribute range, attribute split point, associated with this region • Incremental event hashing and routing • Logical Stateless Routing algorithm (LSR) • Operates in O(log n) rounds (depth of the tree) • Uses logical addresses of nodes and geographic direction of destination (Unlike GPSR where node addresses are physical)
KDDCS Components • K-D Tree Rebalancing Algorithm (KDTR) • Selection of tree to be rebalanced • Find the highest unbalanced node in the K-D tree • Rebalancing threshold h • O(log n) rounds from the leaves to the root of the K-D tree • Tree rebalancing • Solve the weighted split median problem on the unbalanced subtree • Change the split points intermediate nodes of the unbalanced subtree (the dynamic split points concept)
KDDCS Components • Distributed logical address assignment algorithm • Event to bit-code mapping • Incremental event hashing and routing • K-D Tree Rebalancing algorithm (KDTR)
Roadmap • Motivating Application:Disaster Management • Data-Centric Storage (DCS) • Problem Statement:Storage Hot-spots • Previous Solutions: • Zone Sharing Algorithm on top of DIM • The K-D Tree Based DCS scheme (KDDCS) • Experimental Results • Conclusions
Simulation Description • Compare: KDDCS andDIM. • Simulator similar to that of DIM [Li et. al., SenSys’03]. • Two phases: insertion & query. • Insertion phase • Each sensor initiates 5 events (1 event = 1 message). • Events forwarded to owners. • Query phase • Queries of sizes 10% to 80% of the attributes ranges.
Experimental Results: QoD Result Size of a 50% Query for a network with a (80%, 10%)Hot-Spot
Experimental Results: Data Persistence Dropped Events for a network with a (80%, 10%) Hot-Spot
Experimental Results: Load Balancing Avg. Node Storage for a network with a (70%, 10%)Hot-Spot Note:Numbers are rounded to the closest integer
Experimental Results: Energy Consumption Average Node Energy for a network with a (70%, 10%)Hot-Spot
Experimental Results: Event Movements Moved Events for networks with an (X%, 10%)Hot-Spot
Conclusions & Future Work • Storage Hot-Spots:Serious problem in DCS schemes • Previous Solutions: • ZS: A storage hot-spots decomposition algorithm running on top of DIM [Aly et al., DMSN’05]. • Contribution: • KDDCS: A new DCS scheme avoiding the formation of storage hot-spots.
Conclusions & Future Work • KDDCS Advantages: • Achieving a better data persistenceby balancing storage responsibility among nodes • Increasing the QoDby distributing the storage hot-spot events among a larger number of nodes • Increasing the energy savingsby achieving a well balanced energy consumption overhead among sensor nodes. • Possible Extensions: • Compare KDDCS with DIM + ZS • Compare KDDCS performance against new DCS schemes like RESTORE [Krishnamurthy et al., INSS’06] • Adapt KDDCS to cope with Query Hot-Spots (large number of queries accessing small number of sensors) [Aly et al., MOBIQUITOUS’06]
Acknowledgment • This work is part of the “Secure CITI: A Secure Critical Information Technology Infrastructure for Disaster Management (S-CITI)” project funded through the ITR Medium Award ANI-0325353 from the National Science Foundation (NSF). • For more information, please visit: http://www.cs.pitt.edu/s-citi/
Thank You Questions ? Advanced Data Management Technologies Lab http://db.cs.pitt.edu