System design issues in sensor databases
This presentation is the property of its rightful owner.
Sponsored Links
1 / 60

System Design Issues In Sensor Databases PowerPoint PPT Presentation


  • 80 Views
  • Uploaded on
  • Presentation posted in: General

System Design Issues In Sensor Databases . Qiong Luo and Hejun Wu Department of Computer Science and Engineering The Hong Kong University of Science & Technology http://www.cse.ust.hk/. Wireless Sensor Networks (WSNs). Limited on-node resource Multi-hop communication.

Download Presentation

System Design Issues In Sensor Databases

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


System design issues in sensor databases

System Design Issues In Sensor Databases

Qiong Luo and Hejun Wu

Department of Computer Science and Engineering

The Hong Kong University of Science & Technology

http://www.cse.ust.hk/


Wireless sensor networks wsns

Wireless Sensor Networks (WSNs)

Limited on-node resource Multi-hop communication

Energy efficiency is the most crucial performance factor.

SensorDB System Design Issues


In network sensor query processing sensor databases sensordbs

SELECT avg (light)

FROM sensors

SAMPLE INTERVAL 60s

Avg light: (1000+500)/2

σ,π,α

σ,π,α

σ,π,α

σ,π,α

Avg light: 300/1

Scheduler

Scheduler

Scheduler

Scheduler

light: 500

Sensing & Networking

Sensing & Networking

Sensing & Networking

Networking

Avg light: 1000/1

light: 300

light: 1000

In-Network Sensor Query Processing (Sensor Databases, SensorDBs)

SELECT temperature

FROM sensors

WHERE temperature > 900

SAMPLE INTERVAL 60s

sink

SensorDB System Design Issues


Two representative sensordbs

Two Representative SensorDBs

  • Cougar [BGS01, YG03]

    • Model sensor network data as sequences

    • Declarative query interface with UDFs

    • Cross-layer optimization in later versions

  • TinyDB [MF+02, 03]

    • Declarative query interface

    • Efficient and extensible framework

    • Open-source implementation on real nodes

SensorDB System Design Issues


Advantages of sensor databases

Advantages of Sensor Databases

  • Flexibility

    • Declarative SQL style queries

    • Dynamic query injection and removal

  • Efficiency

    • Cross-layer optimization

      • E.g., in-network filtering and aggregation

SensorDB System Design Issues


Challenges in sensor databases

Challenges in Sensor Databases

  • Dynamic data streams

  • Hardware resource limitations

    • Limited per-node computing power and storage

    • Unreliable wireless communication

    • Battery power supply

  • Complex, networked, embedded software

    • Blurred boundaries between components

    • Plenty of cross-layer optimization opportunities

SensorDB System Design Issues


Focus of this tutorial

Focus of this Tutorial

  • System design issues in sensor databases

    • Software architecture

    • Operating system support

    • Media Access Control (MAC)

    • Routing

    • Scheduling

These issues often dominate the overall performance.

SensorDB System Design Issues


Outline

Outline

  • Introduction

  • WSN hardware

    • Computing, sensing, communication, and power supply

  • Software architecture

  • Operating system support

  • MAC protocols

  • Routing

  • Scheduling

  • Summary and future directions

SensorDB System Design Issues


Current sensor node hardware computing and storage

Current Sensor Node Hardware: Computing and Storage

  • Low-power microcontroller (CPU of a node)

    • E.g., Atmega128 (MICA series), MSP430 (Telos series), ARM/THUMB (XYZ sensor), and the latest 180MHz ARM920 (SunSpot).

  • Limited memory

    • RAM

      • ≤ 10KB SRAM (Static RAM)

    • ROM

      • Usually ≤ 1MB flash memory

SensorDB System Design Issues


Current sensor node hardware sensing and radio

Current Sensor Node Hardware: Sensing and Radio

  • Sensing devices

    • Electronic, mechanic, bio-chemical, …

  • Radio transceiver

    • Fixed radio frequency

    • Omni-direction radio signal

    • Transmission rate ≤ 200 kbps

    • Transmission range ≤ 50 meters

SensorDB System Design Issues


Current sensor node hardware power supply and consumption

Current Sensor Node Hardware: Power Supply and Consumption

  • Power supply

    • Batteries, usually <= 2000 mAh

  • Electric currents in a node

    • Sleep 15-20 µA

    • Radio on

      • Idle 20-25 mA, compute 25-30 mA

    • Radio off

      • Idle 1-5 mA, compute 5-10 mA

Sleeping is the most effective means to save energy.

SensorDB System Design Issues


Outline1

Outline

  • Introduction

  • WSN hardware

  • Software architecture

  • Operating system support

  • MAC protocols

  • Routing

  • Scheduling

  • Summary and future directions

SensorDB System Design Issues


Common software architecture of sensor databases

Common Software Architecture of Sensor Databases

Scheduling

Operating System Kernel

Boundaries between components in a sensorDB are blurred.

SensorDB System Design Issues


Outline2

Outline

  • Introduction

  • WSN hardware

  • Common SensorDB software architecture

  • Operating system support

    • Hardware management

    • Application code development and deployment

  • MAC protocols

  • Routing

  • Scheduling

  • Summary and future directions

SensorDB System Design Issues


Tinyos http www tinyos net

TinyOS (http://www.tinyos.net/)

  • De facto OS for sensor nodes

    • Early research effort

    • Open source development

    • Wide presence in commercial products

    • Component-based architecture

      • Adaptive to hardware changes

      • Lightweight for various applications

    • Event-driven processing

      • Responsive to sensor signals and radio messages

SensorDB System Design Issues


Tinyos application

TinyOS Application

TinyOS startup (“Main”)

Runable image of a TinyOS application

Application

Commands

Events

Lib components

TinyOS interface components

Kernel:

Core system components

Hardware manipulation components

Abstraction:

Sensor devices

Hardware:

Mote main board

A TinyOS application is compiled with TinyOS components.

SensorDB System Design Issues


Some limitations of tinyos

Some Limitations of TinyOS

  • Static code and memory

    • No virtual memory

    • No dynamic memory allocation

    • No dynamic code update

    • Task execution without priorities

  • Single thread

TinyOS memory allocation

Stack

Free

Global

SensorDB System Design Issues


Contiki dgv04

Contiki [DGV04]

  • Multi-threading

  • Lightweight program loading

  • Lightweight communication stacks

    • uIP

      • A micro-version of RFC-compliant TCP/IP

    • Rime

      • A lightweight communication stack for low-power radio

#1

#2

core

#3

#n

Multi-threading in Contiki

SensorDB System Design Issues


Sos hk 05

Dynamic module loading

Allows incremental update of binary code

Runtime safety mechanisms

Memory monitoring

Watchdog

Restart when system hangs

Jump table

1

Module #1

Module #2

2

Module #N

SOS Kernel

SOS [HK+05]

System function call

Actual function to call

SensorDB System Design Issues


Mantis bc 05

Multi-threading

Remote testing

Scheduler for duty-cycle sleeping

Small code size

Uses less than 500B RAM and 14KB flash memory

MANTIS [BC+05]

User threads

#1

#n

Network

Stack

Command

Server

MANTIS System API

Kernel / Scheduler

Communication Layer

Device driver

Sensor Node Hardware

SensorDB System Design Issues


T kernel gs06

OS protection

Separates OS/app space

Virtual memory

Extends the limited SRAM

Preemptive scheduling

Allows priorities

Fault tolerance

Prevents system hang-up from application errors

t-kernel [GS06]

Application binary code

Load

Naturalization

Run

Running an app. in t-kernel

SensorDB System Design Issues


On node virtual machines

Query

synopsis

Transmission

buffer

QM

programs

Bytecode

interpreter

Operand

stack

Sensors

On-Node Virtual Machines

  • SunSPOT

    • A compact Java language

    • Java VM directly runs in on-node flash memory

  • SwissQM [MAK07]

    • Combines a powerful gateway with a virtual machine at the sensors

      • Query Machine (QM)

http://www.sunspotworld.com/

SensorDB System Design Issues


Declarative sensor networks cp 07

Snlog compiler

Snlog front-end

Execution planner

NesC backend

Declarative Sensor Networks [CP+07]

  • Snlog language

    • Datalog-like, declarative

    • Suitable for polynomial-time programs

    • Useful in a variety of apps

  • Snlog compiler

    • Translate Snlog into NesC

  • Runtime system

    • Components of user provided rules

    • No on-node interpreter

Snlog program

nesC Templates

DSN runtime

components

Generated NesC program

Binary code

to be executed

NesC Compiler

SensorDB System Design Issues


Summary on os support

Summary on OS Support

  • Support app. development and deployment

    • Programming interfaces

    • Code compilation and generation

    • Runtime loading and modification

  • Provide hardware resource management

    • Sensor signals, radio messages

    • Memory allocation and virtualization

    • Scheduling and system safety

SensorDB System Design Issues


Os and sensor databases

OS and Sensor Databases

  • Desirable OS features for sensor databases

    • Multiple applications

    • Multi-threading

    • Virtual memory

    • Priority scheduling

    • Reliability and fault tolerance

SensorDB System Design Issues


Outline3

Outline

  • Introduction

  • WSN hardware

  • Common SensorDB software architecture

  • Operating system support

  • MAC protocols

    • CSMA, STEM, S-MAC, and T-MAC

  • Routing

  • Scheduling

  • Summary and future directions

SensorDB System Design Issues


Csma carrier sense multiple access

CSMA (Carrier Sense Multiple Access)

  • Random delay before transmission attempt

  • Node needs to keep idle listening before its communication done

  • Wireless collision remains a major problem

    • Reason: no effective coordination between nodes

transmitting

Collision

Sender 1

transmitting

Sender 2

SensorDB System Design Issues


Sparse topology and energy management stem sts02

Power

Listening

Listening

Listening

Transmit

Sleep

time

Sparse Topology and Energy Management (STEM) [STS02]

  • Periodic wake up and listen

  • Sleep when no packet to send and receive

SensorDB System Design Issues


S mac sensor mac yhe02

Listen

Receiver

Sleep

SYNC

RTS

Sender

S-MAC (Sensor-MAC) [YHE02]

  • Schedules nodes to periodically sleep

  • Coordinates the sleeping time of neighbors for reliable transmission

SensorDB System Design Issues


T mac dl03

T-MAC [DL03]

  • Contention based protocol

  • Dynamically ends an active period

    • Adapts to the needs for computation and communication

Active time

Sleep time

S-MAC

Active time

Sleep time

T-MAC

Aha, no more to do!, zzz~

TA

SensorDB System Design Issues


Summary on mac

Summary on MAC

  • Important for performance

    • Communication quality

      • Signal errors

      • Noise

    • Communication energy

      • Sleeping nodes

      • Retransmission

    • Communication delay

      • Negotiation for channels

      • Wireless signal transmission delay

Significant to data quality, energy efficiency and response time in query processing!

SensorDB System Design Issues


Mac and sensor databases

MAC and Sensor Databases

  • MAC behavior of sensor databases

    • Mostly converge-cast

    • Periodic data flows

  • Opportunities of sensor databases for MAC

    • Sleep scheduling that suits the data flows

SensorDB System Design Issues


Outline4

Outline

  • Introduction

  • WSN hardware

  • Common SensorDB software architecture

  • Operating system support

  • MAC protocols

  • Routing

    • MintRoute, TinyAODV, and Directed Diffusion

  • Scheduling

  • Summary and future directions

SensorDB System Design Issues


Location based routing

Location-Based Routing

  • Requires location information

    • Usually finds the shortest, reliable path using location information of each node

      • Energy aware

  • Suitable for queries with spatial predicates

    • Can route queries to some specific regions

D

Shortest path

S

Transmission range of S

SensorDB System Design Issues


Flooding

Flooding

  • Every node broadcasts received data

    • Broadcast can be reduced by hop count

  • Advantage

    • Simple

  • Problems

    • Message implosion

      • Many duplicates

    • Resource inefficiency

      • Most nodes busy

      • No sleeping

SensorDB System Design Issues


Directed diffusion ig 00

Directed Diffusion [IG+00]

  • Queries are defined as interests.

  • Sink nodes post interests.

  • Source nodes generate sensory data.

  • Source nodes select reliable and efficient routes to the sink nodes to forward data.

SensorDB System Design Issues


Illustration of directed diffusion

Illustration of Directed Diffusion

Sink node

Sink node

Step 1:

Sink node

propagates

Interest (query)

Step 2:

Set up gradients

Source node

Source node

Sink node

Step 3: Reinforce one path

Source node

SensorDB System Design Issues


Mintroute wtc03

MintRoute [WTC03]

  • Implemented in TinyOS

    • Can be used in TinyDB

  • More than simple shortest-path routing

    • Monitors link connectivity

    • Decides a route based on both link quality and distance

Unreliable, high loss rate

1

1

2

2

3

3

SensorDB System Design Issues


Tinyaodv tiny ad hoc on demand distance vector

TinyAODV (Tiny Ad-hoc On-Demand Distance Vector)

  • Builds paths only when needed

  • Uses sequence number in RREQ to avoid cycles

Source

Destination

RREQ: Route Request

RREP: Route Reply

RREQ

RREP

RERR: Route ERR

DATA

X

RERR

SensorDB System Design Issues


Summary on routing

Summary on Routing

  • Focus of current routing protocols

    • Efficient forwarding

      • Shortest path or least retransmission

    • Load balancing

      • Avoid hot spots of heavy traffic

  • Open issues

    • Reliability

      • Node failure

      • Noise

    • Communication delay

      • Find the path of the minimal delay

SensorDB System Design Issues


Routing and sensor databases

Routing and Sensor Databases

  • Routing characteristics of sensor databases

    • Mainly converge-casting

    • Not all nodes satisfy a query all the time.

  • Opportunities of sensorDBs for routing

    • Data flow aware routing

      • Busy nodes get better routes.

      • Busy queries get better routes.

    • Query type aware routing

      • Aggregation, duplicate-sensitivity, join

SensorDB System Design Issues


Outline5

Outline

  • Introduction

  • WSN hardware

  • Common SensorDB software architecture

  • Operating system support

  • MAC protocols

  • Routing

  • Scheduling

    • FPS, Sichitiu’s Scheme, and DCS

  • Summary and future directions

SensorDB System Design Issues


Goal of scheduling

Lost!

Data

Goal of Scheduling

  • Communication efficiency and reliability

    • Coordinate nodes in communication

      • Wireless collisions among neighbors

      • No receiving on sleeping nodes

Sending…

Done!

zzz…

zzz…

SensorDB System Design Issues


Centralized scheduling

Centralized Scheduling

  • The base station specifies schedules for all nodes.

    • The base station must be aware of the workload and the network topology

  • Hard to scale

  • Hard to adapt to changes

Sink

Schedule

SensorDB System Design Issues


Distributed scheduling

Distributed Scheduling

  • Scheduling in TinyDB (query layer)

    • A node keeps active for 4 seconds and sleeps in the remaining time in a sample interval.

  • Sichitiu’s Scheduling Scheme [Sic04]

    • Schedules at the MAC and routing layers

    • Sets up both routing paths and schedules

      • Schedule construction is time consuming and unreliable because it needs the sink to confirm.

SensorDB System Design Issues


Fps flexible power scheduling hdb04

FPS (Flexible Power Scheduling) [HDB04]

  • Routing-layer distributed scheduling

  • A parent node assigns transmission slots to its children to avoid collision between siblings.

  • Collisions among non-sibling neighbors are possible.

Slots:

Time

SensorDB System Design Issues


Dcs distributed cross layer scheduling wlx06

DCS (Distributed Cross-Layer Scheduling) [WLX06]

  • Slot based

  • Takes query processing cycles into account

    • Receiving, computing, transmission, and sleep

  • Not only parents assign schedules to children, but neighbors also negotiate.

    • Able to avoid the collisions at the receiving nodes

    • Attempts to assign consecutive transmission slots to each node

SensorDB System Design Issues


Dcs components

Scheduling Module

Query Layer

Query Scheduling

Selection / Projection / Join / Aggregation

Schedule Execution

Routing Layer

Route Selection

Route Maintenance

Schedule Construction

MAC Layer

Time Synchronization

Collision Detection

Transmission /

Receiving

DCS Components

SensorDB System Design Issues


Slot in a schedule

Slot in a Schedule

  • A slot is a time period of fixed length.

    • Transmission, Sleeping, PL/R (Processing, Listening / Receiving), and Q/M (Query injection / route Maintenance)

  • Slot number s at t:

    • The length of a slot is ls.

    • The schedule start time is t0.

    • A sample interval has m slots.

SensorDB System Design Issues


An example schedule

Routing

tree

0

Transmission

PL/R

3

Active (sink only)

1

Q/M

An Example Schedule

Sleeping

2

Leaf Leaf Sink

Hop 0

Hop 1

Node3

Hop 2

Node2

Hop 2

Node 1

0

Time

SensorDB System Design Issues


Energy efficiency

Energy Efficiency

DCS achieves 50-60% energy saving.

SensorDB System Design Issues


Summary on scheduling

Summary on Scheduling

  • Scheduling is done on one or more layers.

  • Scheduling is crucial for performance.

    • Communication reliability

      • Coordination of nodes

    • Energy consumption

      • Sleep scheduling

    • Response time

      • Different transmission timings of neighboring nodes result in different delays.

SensorDB System Design Issues


Scheduling and sensor databases

Scheduling and Sensor Databases

  • SensorDBs are complex to schedule.

  • Opportunities in scheduling for sensorDBs

    • On-node multi-query scheduling

      • Limited resources

      • Changing sensor environments

    • Query-aware transmission scheduling

    • Interaction between scheduling and query execution

SensorDB System Design Issues


Outline6

Outline

  • Introduction

  • WSN hardware

  • Common SensorDB software architecture

  • Operating system support

  • MAC protocols

  • Routing

  • Scheduling

  • Summary and future directions

SensorDB System Design Issues


Tutorial summary

Tutorial Summary

  • System design issues have a significant impact on the overall performance of sensor databases.

  • A holistic sensor database system requires considerations on all layers – from OS kernel, MAC, routing to query processing.

  • Cross-layer design is necessary, especially in scheduling.

SensorDB System Design Issues


Future directions

Future Directions

  • Multi-query processing in sensor networks

    • Query optimization

      • Sharing, caching, and pipelining

    • Scheduling

      • Queries, operators, and transmission

  • In-network joins among different nodes

    • Fine-grained scheduling for node cooperation

  • Query processing in multi-sink networks

Cross-layer design is necessary for an efficient, holistic sensor database.

SensorDB System Design Issues


References sensor databases and runtime support

References: Sensor Databases and Runtime Support

[BGS01] Philippe Bonnet, Johannes Gehrke, and Praveen Seshadri. Towards Sensor Database Systems.MDM, 2001 .

[MF+02] Samuel Madden, Michael J. Franklin, Joseph M. Hellerstein, and Wei Hong. TAG: a Tiny AGgregation Service for Ad-Hoc SensorNetworks. OSDI, 2002.

[MF+03] Samuel Madden, Michael J. Franklin, Joseph M. Hellerstein, and Wei Hong. The Design of an Acquisitional Query Processor for Sensor Networks. SIGMOD, 2003.

[YG03] Yong Yao and Johannes Gehrke. Query Processing for Sensor Networks.CIDR, 2003.

[MAK07] Rene Muller, Gustavo Alonso, and Donald Kossman. SwissQM: Next Generation Data Processing in Sensor Networks.CIDR, 2007.

[CP+07] David Chu, Lucian Popa, Arsalan Tavakoli, Joseph M. Hellerstein, Philip Levis, Scott Shenker, and Ion Stoica. The Design and Implementation of A Declarative Sensor Network System. Submitted for publication, 2007.

SensorDB System Design Issues


References os support

References: OS Support

[DGV04] Adam Dunkels, Björn Grönvall, and Thiemo Voigt. Contiki -A Lightweight and Flexible Operating System for Tiny Networked Sensors. The 29th Annual IEEE Conference on Local Computer Networks, 2004.

[HK+05] Chih-Chieh Han, Ram Kumar, Roy Shea, Eddie Kohler and Mani Srivastava. A Dynamic Operating System for Sensor Nodes.International Conference on Mobile Systems, Applications, and Services, 2005.

[BC+05] Shah Bhatti, James Carlson, Hui Dai, Jing Deng, Jeff Rose, Anmol Sheth, Brian Shucker, Charles Gruenwald, Adam Torgerson, and Richard Han. MANTIS OS: An Embedded Multithreaded Operating System For Wireless Micro Sensor Platforms.ACM/Kluwer Mobile Networks and Applications (MONET), Special Issue on Wireless Sensor Networks, vol. 10, no. 4, pp.563–579, Aug 2005.

[GS06] Lin Gu and John A. Stankovic. t-kernel: Providing Reliable OS Support for Wireless Sensor Networks.SenSys, 2006.

SensorDB System Design Issues


References mac and routing

References: MAC and Routing

[STS02] Curt Schurgers, Vlasios Tsiatsis, and Mani B. Srivastava. STEM: Topology Management for Energy Efficient Sensor Networks. IEEE Aerospace Conference, 2002.

[YHE02] Wei Ye, John Heidemann, and Deborah Estrin. An Energy-Efficient MAC Protocol for Wireless Sensor Networks. INFOCOM, 2002.

[DL03] Tijs van Dam and Koen Langendoen. An Adaptive Energy-Efficient MAC Protocol for Wireless Sensor Networks. SenSys, 2003.

[IGE00] Chalermek Intanagonwiwat, Ramesh Govindan, and Deborah Estrin. Directed Diffusion: A Scalable and Robust Communication Paradigm for Sensor Networks. MobiCom, 2000.

[WTC03] Alec Woo, Ternence Tony, and David Culler. Taming the Underlying Challenges of Reliable Multihop Routing in Sensor Networks.SenSys, 2003.

SensorDB System Design Issues


References scheduling

References: Scheduling

[HDB04] Barbara Hohlt, Lance Doherty, and Eric Brewer. Flexible Power Scheduling for Sensor Networks. IPSN, 2004.

[Sic04] Mihail L. Sichitiu. Cross-Layer Scheduling for Power Efficiency in Wireless Sensor Networks. INFOCOM, 2004.

[WLX06] Hejun Wu, Qiong Luo, and Wenwei Xue. Distributed Cross-Layer Scheduling for In-Network Sensor Query Processing. PerCom, 2006.

SensorDB System Design Issues


  • Login