Università degli studi di Modena e Reggio Emilia
Facoltà d’Ingegneria
Corso di Laurea in Ingegneria Informatica
TINYDB: GESTIONE DEI DATI
IN RETI DI SENSORI
Relatore:
Chiar.mo Prof. Sonia Bergamaschi
Candidato:
Giorgia Loschi
materiale disponibile all’url http://www.dbgroup.unimo.it/tesi/indexNod.html
1
Reti di sensori: generalità
Mote: è un dispositivo di elaborazione in miniatura dotato di
 Rete
di sensori: retememorie
costituita
numeroricetrasmittente;
elevato di nodi collegati
microprocessore,
e didaunun
apparato
tra loro
mediante
multipli.
nodo diè dati
dotato
di un e una
presenta
inoltre cavi
sensori
per la Ogni
rilevazione
ambientali
microprocessore
e di uno o più sensori collegati mediante interfacce
batteria per l’alimentazione
proprietarie.
 Rete di sensori wireless: le WSN sono reti formate da tanti piccoli
Memoria
di lavoro
elementi chiamati mote, dal nome utilizzato per i primi prototipi di
WSN sviluppati dall’Università della California Berkeley (USA)

Scopo di una rete di sensori: monitoraggio e/o controllo di un
ambiente
Memoria di massa
Microprocessore:
Capacità di elaborazione
Ottimizzazione dell’energia
Sensori:
Temperatura
Umidità
Rumore
…
2
Applicazioni - 1

Applicazioni militari:
-Primo utilizzo: Guerra Fredda
- controllo campi di battaglia
- rilevazione spostamenti truppe nemiche
- operazioni di localizzazione dei bersagli
- Riconoscimento di agenti chimico fisici nell’ambito di battaglie chimico
biologiche


Applicazioni industriali:
- Controllo processi produttivi
Controllo ambientale:
- sistemi di previsione degli incendi
- agricoltura di precisione
- controllo dell’inquinamento
- statistiche relative alla fauna protetta
3
Applicazioni - 2

Applicazioni mediche:
- trasmissione dei parametri fisiologici dei pazienti all’interno di ospedali
- attività diagnostiche
- somministrazione di medicinali
- personal healtcare

Home and Building Automation:
- sistema human centered
- sistema technology centered
- sistema Heating, Ventilation and Hair Conditioning
4
Reti cablate
Vantaggi

Non presentano limitazioni di
potenza

Buoni livelli di sicurezza
Svantaggi

Impossibilità o difficoltà
d’installazione in ambienti
inospitali per l’uomo

Alti costi d’installazione

Struttura rigida: difficoltà
d’installazione di nuovi nodi o
modifica di quelli esistenti
5
Reti Wireless
Soluzione ai problemi delle reti cablate:
 Riduzione dei costi d’installazione dei sensori
 I cavi necessitano dell’utilizzo di connettori, soggetti ad usura
 Realizzazione di ambienti con alta densità di sensori
Ma…
Presentano svantaggi in termini di:





Problemi di propagazione del segnale
Interferenze
Sicurezza
Requisiti di Potenza
Norme legislative
Aumento della
complessità
della rete
6
Scelte tecnologiche

Tolleranza al guasto: capacità della rete di riconfigurarsi a seguito di guasti o
malfunzionamenti in alcuni nodi

Scalabilità: capacità della rete di acquisire nuovi nodi

Costi produttivi: non devono superare quelli di una normale struttura cablata

Ambienti operativi: è necessario tener conto dell’ambiente, spesso inospitale nel
quale sarà dispiegata la rete

Topologia della rete: posizione che i diversi dispositivi vengono ad occupare nello
spazio (rete a stella, peer to peer, mesh)

Mezzi trasmissivi:
- sistemi induttivi
- sistemi ottici
- ultrasuoni
- Radio Frequenza (RF)
7
Software dei mote
Mote: risorse hardware limitate
Sistemi operativi ad hoc
TinyOS e Nesc:
Primo sistema operativo e primo linguaggio di programmazione per reti di
sensori, sviluppati dall’Università di Berkeley.
8
TinyDB
Applicazione per la gestione dei dati in reti di sensori, sviluppata presso l’Intel Research
Laboratory Berkeley e UC Berkeley. Al progetto hanno collaborato il ricercatore dell’Intel Wei
Hong insieme a Samuel Madden, Micheal J. Franklin e Joseph M. Hellerstein dell’UC
Berkeley.
Caratteristiche: il sistema fornisce

un’interfaccia che consente di recuperare informazioni dai
sensori eseguendo interrogazioni espresse in un
linguaggio SQL-like
Sensor Network = Database
Una semplice API Java per la scrittura di applicazioni che
consentono di interrogare la rete ed estrarre i dati dai
sensori
Scopo: facilitare il compito del programmatore

Scrittura di centinaia
di linee di codice C
per ogni dispositivo
Query SQL-like
su tutta la rete
9
Architettura
Il sistema è costituito da due macrosezioni:
-
Software eseguito sui singoli sensori (sviluppato in NesC)
Interfaccia client (sviluppata in Java)
Componenti:
Sensor Catalog: tiene traccia delle misure disponibili e di alcune
proprietà caratteristiche del singolo sensore
Query Processor: gestisce tutte le fasi di esecuzione della query
(ottimizzazione, disseminazione e raccolta dati, elaborazione)
Network Topology Manager: interfaccia per i componenti di livello
sottostante
10
Linguaggio e Modello dei dati
Unica tabella Sensors
Righe: contengono i dati letti da ciascun
dispositivo in un certo istante
Colonne: identificano i vari attributi (tipo di
misurazione, nodeid, timestamp,..)
Impossibili operazioni di join e
•Illimitata, costituita da un flusso continuo
di ordinamento
di tuple
•Distribuita sull’intero insieme di nodi
Materialization Point
CREATE
STORAGE POINT recentlight SIZE 8
AS (SELECT nodeid, light FROM sensors
SAMPLE PERIOD 10s)
TinySQL
Operatori di SELECT, FROM, WHERE,
GROUP BY per operazioni di
selezione, proiezione, join e
aggregazione
Ulteriori clausole rispetto a SQL
SAMPLE PERIOD, FOR
SELECT nodeid, temp
FROM sensors
SAMPLE INTERVAL 1s FOR 10s
LIFETIME
SELECT …
LIFETIME 10 days
MIN SAMPLE INTERVAL 1s
11
Interrogazioni
SRT build request
1) Ottimizzazione dell’interrogazione (basestation)
Parent selection message:
Problema: ridurre le operazioni costose (campionamento)
•Random
Ordinamento delle operazioni ( capionamento, predicati e operatori) in base a:
Ordine parziale
•Closest
parent
Selettività
•Clustered
Costo di acquisizione (metadati)
Mantenimento:
2) Disseminazione
dell’interrogazione nella rete
Nuovi nodi
Problema: riconoscimento dei nodi che non forniscono risultati per l’interrogazione
Guasti
Soluzione: Costruzione di un SRT (Semantic Routing Tree)
Scelte di nuovi padri
Campo di applicazione: predicati di selezione applicati ad attributi costanti (nodeid,
location)
Problemi:
Attributi non costanti
Alto tasso di cambiamenti
12
Interrogazioni
3) Esecuzione delle interrogazioni
1. sensori in stato di sleep
2. si svegliano (evento o dati in arrivo)
3. Campionano i sensori
4. Applicazione degli operatori
Eseguite da ogni sensore
In ogni epoch
Gestione della sincronizzazione tra padri e figli: suddivisione delle epoch in intervalli
Priorità di consegna dei dati e identificazione dei dati rilevanti:
Interrogazioni di selezione:

Naive

Winavg

Delta

Aggregazioni:
Snooping
Adattamento al traffico e al livello energetico
13
Conclusioni e Sviluppi
Vantaggi di TinyDB:



Fornisce un linguaggio semplice per l’interrogazione della rete
Dettagli implementativi nascosti all’utente
Ottimizzazione dei consumi
Limiti:




Difficilmente riutilizzabile in nuove tipologie di ambiente
Linguaggio molto semplice: non adatto per applicazioni sofisticate
Si ignora la possibilità di inserire la rete in vasti ecosistemi di raccolta dati
Non supporta le reti mobili
Obiettivi futuri per le reti di sensori:


Migliorare le risorse energetiche
Sviluppo di reti di sensori intelligenti (video sorveglianza)
14
Scarica

tinydb: gestione dei dati in reti di sensori