Developer Data Modeling Mistakes: From Postgres to NoSQL
Coordination of Resource-Constrained Devices through a Distributed Semantic Space
1. Coordination of Resource-Constrained Devices through a
Distributed Semantic Space
´
Aitor Gomez-Goiri
DeustoTech - Deusto Institute of Technology, University of Deusto
http://www.morelab.deusto.es
February 20, 2013
12. Tuple Spaces
Coupling
⇓
nodes coordinate writing and reading information in a
common space
Coordination of Constrained devices What do I do? 11 / 42
13. Tuple Spaces
Coupling
⇓
nodes coordinate writing and reading information in a
common space
Location autonomy
Reference autonomy
Time autonomy
Coordination of Constrained devices What do I do? 11 / 42
14. The Semantic Web
Coupling on nodes’ internal data-schema
⇓
Add semantic to achieve
application-level interoperability
Backup
Coordination of Constrained devices What do I do? 12 / 42
16. Tuple Spaces Semantic Web
Mobile
WoT
comp Ubiquitous
computing
17. Challenge
Adapt TSC for resource constrained devices
Coordination of Constrained devices Lightweight TSC middleware 15 / 42
18. Challenge
Adapt TSC for resource constrained devices
1. Knowledge dissemination
2. Compatibility with REST (& the WoT)
Coordination of Constrained devices Lightweight TSC middleware 15 / 42
19. Knowledge dissemination
Too much load for small devices
Delegate into intermediaries
Everything related wih the semantic
Devices manage their own semantic data
Coordination of Constrained devices Lightweight TSC middleware 16 / 42
20. Compatibility with the WoT/REST
Provide content using semantic format
RESTfully
Compatible with WoT
REST* TSC
ROA x x
Resources
x x
identified by URIs
GET, PUT,
Operations Write, read, take
POST, DELETE
Representation HTML, Json,... Full semantics
On top of that, we build a TSC middleware
Coordination of Constrained devices Lightweight TSC middleware 17 / 42
23. Starting point (assumptions)
Each device manages its own information
The space is distributed among all the participants
Each device interrogates others
Coordination of Constrained devices Lightweight TSC middleware 20 / 42
24. Who to query?
To all (naive)
Coordination of Constrained devices Lightweight TSC middleware 21 / 42
25. Who to query?
To whoever has a relevant answer for me
⇓
need to know about the information others have
Coordination of Constrained devices Lightweight TSC middleware 21 / 42
26. What should a node know from the rest?
General concepts or terminology (TBox)
implies sharing less information
( the specific knowledge, ABox, changes too frequently )
Backup
Coordination of Constrained devices Lightweight TSC middleware 22 / 42
27. Energy-aware architecture
Share clues through an intermediary
dynamic role
chosen according to its capacities
get clues make clues
send clues
directly access to data
Coordination of Constrained devices Lightweight TSC middleware 23 / 42
28. Goal
300000 300000
ours
250000 250000 nb
200000 200000
active time / node
active time / node
150000 150000
100000 100000
50000 50000
0 nb ours 0 xbee foxg20galaxy_tab server
Strategy Types of devices
(16% less energy consumed without activity in a FoxG20)
Coordination of Constrained devices Lightweight TSC middleware 24 / 42
29. Conclusions
1. Indirect communication to ease developers tasks
2. Promote end-to-end search
3. Architecture driven by energy needs
4. Light reasoners for small devices still needed
Coordination of Constrained devices Conclusions 25 / 42
30. Future work
Enhance the mechanisms to act on the space
Consider queries for ABox knowledge
Further tests in non-prototipical real-world
scenarios
Continue exploring its feasibility in other platforms
Coordination of Constrained devices Conclusions 26 / 42
32. Bibliography I
Payam Barnaghi, Wei Wang, Cory Henson, and Kerry Taylor.
Semantics for the internet of things.
International Journal on Semantic Web and Information
Systems, 8(1):1–21, 2012.
George Coulouris, Jean Dollimore, Tim Kindberg, and Gordon
Blair.
Distributed Systems: Concepts and Design.
Addison Wesley, 5 edition, 2012.
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, and
applications, pages 1–40, 2003.
Coordination of Constrained devices Bibliography 28 / 42
35. Conceptual classification
Applications, services
Remote invocation Indirect communication
(e.g. REST or WS.*) (e.g. Tuple Spaces)
Middleware
layers Underlying interprocess communication
(sockets, message passing, multicast support, overlay networks)
Platform
(operating system + hardware)
[CDKB12]
Coordination of Constrained devices Backup slides 31 / 42
36. The Semantic Web in short
The vision of the Semantic Web is to extend principles of
the Web from documents to data. Data should be
accessed using the general Web architecture using, e.g.,
URI-s; data should be related to one another just as
documents (or portions of documents) are already. This
also means creation of a common framework that allows
data to be shared and reused across application,
enterprise, and community boundaries, to be processed
automatically by tools as well as manually, including
revealing possible new relationships among pieces of
data. [Con11]
Back
Coordination of Constrained devices Backup slides 32 / 42
37. Semantics alone are not enough
Providing semantic descriptions alone does not provide
semantic interoperability. [BWHT12]
Agreement on ontological definitions
ontology mapping and matching
use of reference upper-level ontologies
Semantics need to be processed and analyzed
interpret and create meaningful abstractions
effective reasoning and processing
Should the ontologies be simpler and light weight for IoT?
Back
Coordination of Constrained devices Backup slides 33 / 42
39. TBox
TBox contains knowledge describing general properties
of concepts or terminology.
[NB03]
E.g. the device type or the elements it is made of.
Back
Coordination of Constrained devices Backup slides 35 / 42
40. ABox
ABox contains knowledge specific to the individuals of
the domain of discourse.
[NB03]
E.g. the mobile phone brand or the temperature sensed by a
thermometer.
Back
Coordination of Constrained devices Backup slides 36 / 42
41. Application 1: Security
Security application monitors parameters
E.g. temperature, humidity & CO2 concentration
Sensors deployed in an industrual facility
Generates alarms different priorities
They are displayed in different devices
E.g. visual and auditory alarms or in the managers the phone
Using standards ontologies such as: SSN, SWEET
Coordination of Constrained devices Backup slides 37 / 42
42. Application 2: Home automation
Devices deployed on an office: sensors and actuators
An application in a smartphone stores user’s preferences
A node generates tasks to regulate the temperature
Using standards ontologies such as: SSN, MUO, RECO
Coordination of Constrained devices Backup slides 38 / 42
43. Interoperability
Both applications use SSN ontology
Even if they were not designed with that purpose...
App1 transparently uses App2’s data
and vice versa
Back
Coordination of Constrained devices Backup slides 39 / 42
44. Energy consumption
700
Average power consumption (mW)
600
500
400
300
200
100
0 Inactivity Period with Reasoning period
period continuous requests
Back
Coordination of Constrained devices Backup slides 40 / 42
45. Use of Semantic Gateways
Sensors directly Use of semantic
provide data gateway
Strong nodes Really constrained
Most updated Possible Caching
More privacy control
Autonomy Dependency
(less flexible)
Coordination of Constrained devices Backup slides 41 / 42
46. All rights of images are reserved by the
original owners*, the rest of the content is licensed
under a Creative Commons by-sa 3.0 license.
* OpenStreetMap, Universidad de Deusto, Amortize, and Marco Crupi.