57
Assessing data dissemination strategies within Triple Spaces on the Web of Things esIoT 2012 Aitor G ´ omez-Goiri , Diego L ´ opez-de-Ipi ˜ na DeustoTech - Deusto Institute of Technology, University of Deusto http://www.morelab.deusto.es July 4, 2012

Assessing data dissemination strategies

Embed Size (px)

DESCRIPTION

Assessing data dissemination strategies within Triple Spaces on the Web of Things (presentation made on esIoT 2012)

Citation preview

Page 1: Assessing data dissemination strategies

Assessing data dissemination strategieswithin Triple Spaces on the Web of Things

esIoT 2012

Aitor Gomez-Goiri, Diego Lopez-de-Ipina

DeustoTech - Deusto Institute of Technology, University of Deustohttp://www.morelab.deusto.es

July 4, 2012

Page 2: Assessing data dissemination strategies

Outline

Introduction

Data dissemination strategies

Evaluation

Conclusions

Assessing data dissemination strategies 2 / 57

Page 3: Assessing data dissemination strategies

Outline

Introduction

Data dissemination strategies

Evaluation

Conclusions

Assessing data dissemination strategies Introduction 3 / 57

Page 4: Assessing data dissemination strategies

The Web of Things

I Growing connectivity of everyday objects.I WoT to integrate things.

I Scalable interaction, integration with the web world...I But also inherits problems from the web world!

I Lack of expressiveness and human orientationI The Semantic Web enables sharing knowledge across

different applications

Assessing data dissemination strategies Introduction 4 / 57

Page 5: Assessing data dissemination strategies

The Semantic Web

The vision of the Semantic Web is to extend principles ofthe Web from documents to data. Data should beaccessed using the general Web architecture using, e.g.,URI-s; data should be related to one another just asdocuments (or portions of documents) are already. Thisalso means creation of a common framework that allowsdata to be shared and reused across application,enterprise, and community boundaries, to be processedautomatically by tools as well as manually, includingrevealing possible new relationships among pieces ofdata. [Con11]

Assessing data dissemination strategies Introduction 5 / 57

Page 6: Assessing data dissemination strategies

The Semantic Web

The vision of the Semantic Web is to extend principles ofthe Web from documents to data. Data should beaccessed using the general Web architecture using, e.g.,URI-s; data should be related to one another just asdocuments (or portions of documents) are already. Thisalso means creation of a common framework that allowsdata to be shared and reused across application,enterprise, and community boundaries, to be processedautomatically by tools as well as manually, includingrevealing possible new relationships among pieces ofdata. [Con11]

Assessing data dissemination strategies Introduction 6 / 57

Page 7: Assessing data dissemination strategies

Triple Space Computing

I Describes the knowledge shared using the SWI 2 applications using standard ontologies can interact among

them automatically enriching one each other.I Space-based computing

I time autonomyI space autonomyI reference autonomy

Assessing data dissemination strategies Introduction 7 / 57

Page 8: Assessing data dissemination strategies
Page 9: Assessing data dissemination strategies

Goal

How to realize this shared blackboard in the IoT?

Assessing data dissemination strategies Introduction 9 / 57

Page 10: Assessing data dissemination strategies

Outline

Introduction

Data dissemination strategiesCentralizationNegative broadcastingGossiping based strategy

Evaluation

Conclusions

Assessing data dissemination strategies Data dissemination strategies 10 / 57

Page 11: Assessing data dissemination strategies
Page 12: Assessing data dissemination strategies
Page 13: Assessing data dissemination strategies

Centralization in short

r = |Q| + wf .t .(|N| − 1) (1)

Assessing data dissemination strategies Data dissemination strategies 13 / 57

Page 14: Assessing data dissemination strategies
Page 15: Assessing data dissemination strategies
Page 16: Assessing data dissemination strategies

Negative broadcasting in short

r = |Q|.(|N| − 1) (2)

Assessing data dissemination strategies Data dissemination strategies 16 / 57

Page 17: Assessing data dissemination strategies

How to improve the NB?

Reducing the amount of receivers for a query.

Assessing data dissemination strategies Data dissemination strategies 17 / 57

Page 18: Assessing data dissemination strategies
Page 19: Assessing data dissemination strategies
Page 20: Assessing data dissemination strategies

Problem: how to perfectly predict them withoutknowing all what they know?

Page 21: Assessing data dissemination strategies
Page 22: Assessing data dissemination strategies

TBox and ABox

According to Nardi and Brachman [NB03]...

TBox contains the knowledge which describes general propertiesof concepts or terminology.

ABox contains knowledge that is specific to the individuals of thedomain of discourse.

Assessing data dissemination strategies Data dissemination strategies 22 / 57

Page 23: Assessing data dissemination strategies

In other words...

With TBox we can describe the type of devices there are in theworld or the sensors they have.

With ABox we can specify that HTC is a mobile brand or that thesensed temperature is 3o C.

Assessing data dissemination strategies Data dissemination strategies 23 / 57

Page 24: Assessing data dissemination strategies

TBox and ABox in IoT scenarios?

I Mobile devices: user profile,...I Sensors and actuatorsI The structure of the data barely changes!

Assessing data dissemination strategies Data dissemination strategies 24 / 57

Page 25: Assessing data dissemination strategies

Our proposal

I We can assume that all the nodes have or can easily obtainthe TBox information.

I Nodes gossip the classes of concepts (rdf:type) shared byother nodes.

Assessing data dissemination strategies Data dissemination strategies 25 / 57

Page 26: Assessing data dissemination strategies

Subject Predicate Object

wot:meas1 rdf:type ssn:N02Observationwot:meas1 ssn:observedProperty sweet:NO2wot:meas1 ssn:observationResult wot:outpt1wot:outpt1 ssn:hasValue wot:val1wot:val1 ssb:QuantityValue 17wot:val1 dul:isClassifiedBy

muo-ucum:microgram-per-cubic-meter... ... ...

Page 27: Assessing data dissemination strategies

Subject Predicate Object

wot:meas1 rdf:type ssn:N02Observationwot:meas1 ssn:observedProperty sweet:NO2wot:meas1 ssn:observationResult wot:outpt1wot:outpt1 ssn:hasValue wot:val1wot:val1 ssb:QuantityValue 17wot:val1 dul:isClassifiedBy

muo-ucum:microgram-per-cubic-meter... ... ...

Page 28: Assessing data dissemination strategies
Page 29: Assessing data dissemination strategies

Outline

Introduction

Data dissemination strategies

Evaluation

Conclusions

Assessing data dissemination strategies Evaluation 29 / 57

Page 30: Assessing data dissemination strategies

Remember

I We wanted to know which strategy fits better for IoT.I Otsopack: our publicly available TSC middleware which uses

HTTP.I Therefore: communication between nodes was point to point

and exchanges data RDF triples.

Assessing data dissemination strategies Evaluation 30 / 57

Page 31: Assessing data dissemination strategies

Methodology

I Discovery process was ignored.I The Semantic Sensor Network Ontology (SSN).

I Datasets from the University of Utah and the University ofDeusto.

I Measures taken from real embedded web servers.I Simpy.

Assessing data dissemination strategies Evaluation 31 / 57

Page 32: Assessing data dissemination strategies

Performance Metrics

I Precision: the fraction of nodes which answered relevantresults.

I Recall: the fraction of relevant answers returned.I Response time.

Assessing data dissemination strategies Evaluation 32 / 57

Page 33: Assessing data dissemination strategies
Page 34: Assessing data dissemination strategies
Page 35: Assessing data dissemination strategies
Page 36: Assessing data dissemination strategies

Outline

Introduction

Data dissemination strategies

Evaluation

Conclusions

Assessing data dissemination strategies Conclusions 36 / 57

Page 37: Assessing data dissemination strategies

Conclusions

I Need of a gossiping approach.I Increase the precision.I Simulate specific scenarios from the literature.

Assessing data dissemination strategies Conclusions 37 / 57

Page 38: Assessing data dissemination strategies

Assessing data dissemination strategies Conclusions 38 / 57

Page 39: Assessing data dissemination strategies

Bibliography

World Wide Web Consortium.W3c semantic web faq, August 2011.

D. Nardi and R.J. Brachman.An introduction to description logics.The description logic handbook: theory, implementation, andapplications, pages 1–40, 2003.

Assessing data dissemination strategies Bibliography 39 / 57

Page 40: Assessing data dissemination strategies

Assessing data dissemination strategies Backup slides 40 / 57

Page 41: Assessing data dissemination strategies

Semantic Web example

Assessing data dissemination strategies Backup slides 41 / 57

Page 42: Assessing data dissemination strategies

Write

public String write(String spaceURI, Graph ITriples)

throws TSException;

Assessing data dissemination strategies Backup slides 42 / 57

Page 43: Assessing data dissemination strategies

Read

public Graph read

(String spaceURI, String graphURI, long timeout)

throws TSException;

public Graph read

(String spaceURI, Template template, long timeout)

throws TSException;

Assessing data dissemination strategies Backup slides 43 / 57

Page 44: Assessing data dissemination strategies

Take

public Graph take

(String spaceURI, String graphURI, long timeout)

throws TSException;

public Graph take

(String spaceURI, Template template, long timeout)

throws TSException;

Assessing data dissemination strategies Backup slides 44 / 57

Page 45: Assessing data dissemination strategies

Query

public Graph query(String spaceURI, Template template)

throws TSException;

Assessing data dissemination strategies Backup slides 45 / 57

Page 46: Assessing data dissemination strategies

Reasoning

Device TBox ABoxRegular computer

2.787 0.045(Sesame 2.6.4)

Samsung Galaxy Tab17.342 0.225

(Sesame 2.4.2)FoxG20

48.939 1.443(Fuxi)

Assessing data dissemination strategies Backup slides 46 / 57

Page 47: Assessing data dissemination strategies

Our realization of the ideas towards this adaptation areincarnated on Otsopack Open source project

Page 48: Assessing data dissemination strategies

Otsopack Layers

Each Otsopack instance.

Assessing data dissemination strategies Backup slides 48 / 57

Page 49: Assessing data dissemination strategies

About HTTP and TSC

The HTTP verbs retrieve, create, modify or delete web resources

The TS primitives retrieve, create, modify or delete RDF graphson a space

(right, to be honest TS also offers a query, which works at space level)

Assessing data dissemination strategies Backup slides 49 / 57

Page 50: Assessing data dissemination strategies

A RESTful HTTP API

I To expose TS querying primitivesI HTTP status codesI Using content negotiation

Assessing data dissemination strategies Backup slides 50 / 57

Page 51: Assessing data dissemination strategies

Discovery

I Registry based discoveryI Multicast based implementedI Easy to adopt new ones: DNS, mDNS, lmDNS etc.

Assessing data dissemination strategies Backup slides 51 / 57

Page 52: Assessing data dissemination strategies

TSC API in depth

HTTP request URLGET /{sp}/query/wildcards/{s}/{p}/{o-uri}

/{sp}/query/wildcards/{s}/{p}/{o-type}/{o-value}GET /{sp}/graphs/{g}GET /{sp}/graphs/wildcards/{s}/{p}/{o-uri}

/{sp}/graphs/wildcards/{s}/{p}/{o-type}/{o-value}DELETE /{sp}/graphs/{g}DELETE /{sp}/graphs/wildcards/{s}/{p}/{o-uri}

/{sp}/graphs/wildcards/{s}/{p}/{o-type}/{o-value}

Assessing data dissemination strategies Backup slides 52 / 57

Page 53: Assessing data dissemination strategies

XBee gateway platform

I ConnectPort R© X2 (XBee to IPgateway)

I RAM: 8MBI Platform version: Python 2.4I REST libraries: Python Std LibI Semantic libraries: None

Assessing data dissemination strategies Backup slides 53 / 57

Page 54: Assessing data dissemination strategies

Case of study 1: XBee

I We developed a restricted middleware version using PythonI With more than 15 concurrent requests problems were

experienced

Assessing data dissemination strategies Backup slides 54 / 57

Page 55: Assessing data dissemination strategies

FoxG20 platform

I Processor: 400Mhz Atmel ARM9I RAM: 64MBI Platform version: Python 2.5I REST libraries: Python Std LibI Semantic libraries: Fuxi

Assessing data dissemination strategies Backup slides 55 / 57

Page 56: Assessing data dissemination strategies

Case of study 2: FoxG20

I Python implementation usedI Because is lighterI Does not implement all the modules definedI This may be desirable for less powerful devices

I Reasoning took a long timeI TBox: x17 regular computer, x2 galaxy tabI ABox: x32 - x6 galaxy tab

⇓should be limited to special occasions

Assessing data dissemination strategies Backup slides 56 / 57