Università degli studi di Modena e Reggio Emilia

14
1 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

description

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. Candidato: Giorgia Loschi. Relatore: Chiar.mo Prof. Sonia Bergamaschi. - PowerPoint PPT Presentation

Transcript of Università degli studi di Modena e Reggio Emilia

11

Università degli studi di Modena e Reggio Emilia

Facoltà d’IngegneriaCorso 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

22

Reti di sensori: generalitàReti di sensori: generalitàReti di sensori: generalitàReti di sensori: generalità

Rete di sensori: rete costituita da un numero elevato di nodi collegati tra loro mediante cavi multipli. Ogni nodo è dotato di un microprocessore e di uno o più sensori collegati mediante interfacceproprietarie.

Rete di sensori wireless: le WSN sono reti formate da tanti piccoli 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

Memoria di lavoro

Microprocessore:Capacità di elaborazioneOttimizzazione dell’energia

Sensori:TemperaturaUmiditàRumore…

Mote:Mote: è un dispositivo di elaborazione in miniatura dotato di microprocessore, memorie e di un apparato ricetrasmittente;presenta inoltre sensori per la rilevazione di dati ambientali e una batteria per l’alimentazione

33

Applicazioni - 1Applicazioni - 1Applicazioni - 1Applicazioni - 1 Applicazioni militari:Applicazioni militari:

-Primo utilizzo: Guerra Fredda-Primo utilizzo: Guerra Fredda

- controllo campi di battaglia- controllo campi di battaglia- rilevazione spostamenti truppe nemiche- rilevazione spostamenti truppe nemiche- operazioni di localizzazione dei bersagli- operazioni di localizzazione dei bersagli- Riconoscimento di agenti chimico fisici nell’ambito di battaglie chimico - Riconoscimento di agenti chimico fisici nell’ambito di battaglie chimico biologichebiologiche

Applicazioni industriali:Applicazioni industriali: - - Controllo processi produttiviControllo processi produttivi

Controllo ambientale:Controllo ambientale:- sistemi di previsione degli incendi- sistemi di previsione degli incendi

- agricoltura di precisione- agricoltura di precisione - controllo dell’inquinamento- controllo dell’inquinamento

- statistiche relative alla fauna protetta- statistiche relative alla fauna protetta

44

Applicazioni - 2Applicazioni - 2Applicazioni - 2Applicazioni - 2

Applicazioni mediche: Applicazioni mediche: - trasmissione dei parametri fisiologici dei pazienti all’interno di ospedali- trasmissione dei parametri fisiologici dei pazienti all’interno di ospedali

- attività diagnostiche- attività diagnostiche

- somministrazione di medicinali- somministrazione di medicinali

- personal healtcare- personal healtcare

Home and Building Automation:Home and Building Automation:- sistema - sistema human centeredhuman centered

- - sistema sistema technology centeredtechnology centered

- - sistemasistema Heating, Ventilation and Hair Conditioning Heating, Ventilation and Hair Conditioning

55

Reti cablateReti cablateReti cablateReti cablate

VantaggiVantaggi

Non presentano limitazioni di potenza

Buoni livelli di sicurezza

SvantaggiSvantaggi

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

66

Reti WirelessReti WirelessReti WirelessReti 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…Ma…

Presentano svantaggi in termini di:

Problemi di propagazione del segnale Interferenze Sicurezza Requisiti di Potenza Norme legislative

Aumento della complessità della rete

77

Scelte tecnologicheScelte tecnologicheScelte tecnologicheScelte tecnologiche

Tolleranza al guasto: capacità della rete di riconfigurarsi a seguito di guasti o capacità della rete di riconfigurarsi a seguito di guasti o malfunzionamenti in alcuni nodimalfunzionamenti in alcuni nodi

Scalabilità: capacità della rete di acquisire nuovi nodi capacità della rete di acquisire nuovi nodi

Costi produttivi: non devono superare quelli di una normale struttura cablatanon devono superare quelli di una normale struttura cablata

Ambienti operativi: è necessario tener conto dell’ambiente, spesso inospitale nel è necessario tener conto dell’ambiente, spesso inospitale nel quale sarà dispiegata la retequale sarà dispiegata la rete

Topologia della rete: posizione che i diversi dispositivi vengono ad occupare nello posizione che i diversi dispositivi vengono ad occupare nello spazio (rete a stella, peer to peer, mesh)spazio (rete a stella, peer to peer, mesh)

Mezzi trasmissivi:- sistemi- sistemi induttiviinduttivi- sistemi ottici- sistemi ottici- ultrasuoni- ultrasuoni- Radio Frequenza (RF)- Radio Frequenza (RF)

88

Software dei moteSoftware dei moteSoftware dei moteSoftware 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.

99

TinyDBTinyDBTinyDBTinyDB

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 centinaiadi linee di codice C per ogni dispositivo

Query SQL-likesu tutta la rete

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.

1010

ArchitetturaArchitetturaArchitetturaArchitettura

Il sistema è costituito da due macrosezioni:Il sistema è costituito da due macrosezioni:

- Software eseguito sui singoli sensori (sviluppato in NesC)Software eseguito sui singoli sensori (sviluppato in NesC)- Interfaccia client (sviluppata in Java)Interfaccia client (sviluppata in Java)

Componenti:Componenti:- Sensor CatalogSensor Catalog: : tiene traccia delle misure disponibili e di alcune tiene traccia delle misure disponibili e di alcune

proprietà caratteristiche del singolo sensoreproprietà caratteristiche del singolo sensore- Query ProcessorQuery Processor: : gestisce tutte le fasi di esecuzione della query gestisce tutte le fasi di esecuzione della query

(ottimizzazione, disseminazione e raccolta dati, elaborazione)(ottimizzazione, disseminazione e raccolta dati, elaborazione)- Network Topology ManagerNetwork Topology Manager: : interfaccia per i componenti di livello interfaccia per i componenti di livello

sottostantesottostante

1111

Linguaggio e Modello dei datiLinguaggio e Modello dei datiLinguaggio e Modello dei datiLinguaggio e Modello dei dati

Unica tabella SensorsSensors

Righe: contengono i dati letti da ciascun dispositivo in un certo istante

Colonne: identificano i vari attributi (tipo di misurazione, nodeid, timestamp,..)

•Illimitata, costituita da un flusso continuo di tuple

•Distribuita sull’intero insieme di nodi

Unica tabella SensorsSensors

Righe: contengono i dati letti da ciascun dispositivo in un certo istante

Colonne: identificano i vari attributi (tipo di misurazione, nodeid, timestamp,..)

•Illimitata, costituita da un flusso continuo di tuple

•Distribuita sull’intero insieme di nodi

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

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

Impossibili operazioni di join e di ordinamento

Materialization PointCREATESTORAGE POINT recentlight SIZE 8AS (SELECT nodeid, light FROM sensorsSAMPLE PERIOD 10s)

1212

InterrogazioniInterrogazioniInterrogazioniInterrogazioni

1) Ottimizzazione dell’interrogazione (basestation)1) Ottimizzazione dell’interrogazione (basestation)Problema: ridurre le operazioni costose (campionamento)

Ordinamento delle operazioni ( capionamento, predicati e operatori) in base a:

Ordine parziale

Selettività

Costo di acquisizione (metadati)

2) Disseminazione dell’interrogazione nella rete2) Disseminazione dell’interrogazione nella rete

Problema: riconoscimento dei nodi che non forniscono risultati per l’interrogazione

Soluzione: Costruzione di un SRT (Semantic Routing Tree)

Campo di applicazione: predicati di selezione applicati ad attributi costanti (nodeid, location)

SRT build request

Parent selection message:

•Random

•Closest parent

•Clustered

Mantenimento:

Nuovi nodi

Guasti

Scelte di nuovi padri

Problemi:

Attributi non costanti

Alto tasso di cambiamenti

1313

InterrogazioniInterrogazioniInterrogazioniInterrogazioni

3) Esecuzione delle interrogazioni3) Esecuzione delle interrogazioni1. sensori in stato di sleep2. si svegliano (evento o dati in arrivo)3. Campionano i sensori4. Applicazione degli operatori

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

Eseguite da ogni sensore In ogni epoch

1414

Conclusioni e SviluppiConclusioni e SviluppiConclusioni e SviluppiConclusioni e Sviluppi

Vantaggi di TinyDB:Vantaggi di TinyDB: Fornisce un linguaggio semplice per l’interrogazione della rete Dettagli implementativi nascosti all’utente Ottimizzazione dei consumi

Limiti: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:Obiettivi futuri per le reti di sensori: Migliorare le risorse energetiche Sviluppo di reti di sensori intelligenti (video sorveglianza)