Semantic Sensor Networks and Linked Stream Data

5,113 views

Published on

Invited talk at the 8th Summer School on Ontological Engineering and Semantic Web, on Semantic Sensor Networks and Linked Stream/Sensor Data

Published in: Technology, Education

Semantic Sensor Networks and Linked Stream Data

  1. 1. Semantics, Sensor Networks and Linked Stream/Sensor Data<br />8th Summer School on Ontological Engineering and Semantic Web (SSSW2011)Cercedilla, July 15th 2011<br />Oscar Corcho<br />Facultad de Informática,Universidad Politécnica de Madrid<br />Campus de Montegancedosn, 28660 Boadilla del Monte, Madrid<br />http://www.oeg-upm.net<br />ocorcho@fi.upm.es<br />Phone: 34.91.3366605<br />Fax: 34.91.3524819<br />
  2. 2. Index<br />PART I<br />From the [Social] [Semantic] Web… to Sensor Networks… … to the Sensor Web / Internet of Things… … to Semantic Sensor Web and Linked Stream/Sensor Data<br />
  3. 3. TheSemantic Web of Virtual Things and Data<br />Westart living in a well-organisedvirtualworld…<br />“Data ismostly in relationaldatabases and can be exportedtoLinked Data” (Juan Sequeda)<br />“GoodRelationsmarkupisconqueringtheworld of products and serviceswithstructuredmetadata” (Martin Hepp)<br />“Weknowwhere, what and whom” (SteffenStaab)<br />“We can searchforit” (Peter Mika)<br />“And we can link allthese data sources” (Tom Heath)<br />…<br />Disclaimer: “Alltutors and invitedspeakers are equallyimportant and orderisnotimportant. Thosewho do notappearshouldnot be worriedaboutthat” (Enrico Motta and Asun Gómez-Pérez)<br />However, thereal worldisfar more heterogeneous and lesswell-organisedthanthe data thatwestore in ourcomputers(thisisnottheonlypropertythatit has, youwillsee more…)<br />3<br />
  4. 4. Web, Semantic Web, Social Web, Social Semantic…<br />4<br />Source: No idea about copyright (sorry…)<br />
  5. 5. Sensor Networks<br />Increasing availability of cheap, robust, deployable sensors as ubiquitous information sources<br />Dynamic and reactive, but noisy, and unstructured data streams<br />Source: Antonis Deligiannakis<br />
  6. 6. Parts of a Sensor<br />Sensing equipment<br />Internal (“built-in”) <br />External <br />CPU<br />Memory<br />Battery<br />Radio to transmit/receive data from other sensors<br />6<br />Source: Antonis Deligiannakis<br />
  7. 7. Who are theendusers of sensor networks?<br />Theclimatechangeexpert, or a simple citizen<br />Source: Dave de Roure<br />
  8. 8. Notonlyenvironmentalsensors, butmanyothers…<br />8<br />Weather Sensors<br />Sensor Dataset<br />GPS Sensors<br />Satellite Sensors<br />Camera Sensors<br />Source: H Patni, C Henson, A Sheth<br />
  9. 9. How do wemakethesesensors more accessible? <br />9<br />Source: SemsorGrid4Env consortium<br />
  10. 10. The Sensor Web (relatedto Internet of Things)<br />Universal, web-based access to sensor data<br />Some sensor networkproperties:<br />Networked<br />Mostlywireless<br />Each network with some kind of authority and administration<br />Sometimes noisy<br />10<br />Source: Adaptedfrom Alan Smeaton’sinvitedtalk at ESWC2009<br />
  11. 11. Should we care as computer scientists?<br />They are mostly useful for environmental scientists, physicists, geographers, seismologists, … [continue for more than 100 disciplines]<br />Hence interesting for those computer scientists interested on helping these users… We are many ;-)<br />But they are also interesting for “pure” compuyter scientists (and even Semantic Web researchers)<br />They address an important set of “grand challenge” Computer Science issues including: <br />Heterogeneity<br />Scale<br />Scalability<br />Autonomic behaviour<br />Persistence, evolution<br />Deployment challenges<br />Mobility<br />Source: Dave de Roure<br />
  12. 12. A set of challenges in sensor data management<br />Provisioning<br />Complexity of acquisition: distributed sources, data volumes, uncertainty, data quality, incompleteness <br />Pre-processing incoming data: calibration on instruments (specific), lack of re-grid, calibration, gap-filling features<br />Tools for data ingestion needed: generic, customizable, provide estimates, uncertainty degree, etc.<br />Spatial/temporal<br />Analysis, modeling<br />Discovery: identify sources, metadata<br />Data quality: gaps, faulty data, loss, estimates<br />Analysis models <br />Republish analytic results, computations, <br />Workflows for data stream processing <br />12<br />Source: Data Management in theWorldWide Sensor Web. Balazinska et al. IEEE Pervasive Computing, 2007<br />
  13. 13. A set of challenges in sensor data management<br />Interoperability<br />Data aggregation/integration<br />Uncertainty, data quality<br />Noise, failures, measurement errors, confidence, trust<br /> Distributed processing <br />High volume, time critical<br />Fault-tolerance<br />Load management <br />Stream processing features<br />Continuous queries<br />Live & historical data<br />13<br />Source: Data Management in the WorldWide Sensor Web. Balazinska et al. IEEE Pervasive Computing, 2007<br />
  14. 14. A semanticperspectiveonthesechallenges<br />Sensor data querying and (pre-)processing<br />Data heterogeneity<br />Data quality<br />New inferencecapabilitiesrequiredtodealwith sensor information<br />Sensor data modelrepresentation and management<br />For data publication, integration and discovery<br />Bridgingbetween sensor data and ontologicalrepresentationsfor data integration<br />Ontologies: Observations and measurements, time series, etc.<br />Eventmodels<br />Userinteractionwith sensor data<br />
  15. 15. Vision (aftersomeiterations, and more to come)<br />15<br />Source: RWI WorkingGrouponIoT: NetworkedKnowledge<br />
  16. 16. Semantic Sensor Web / LinkedStream-Sensor Data (LSD)<br />A representation of sensor/streamdata followingthestandards of LinkedData<br />Addingsemanticsallowsthesearch and exploration of sensor data withoutany prior knowledge of the data source<br />Usingtheprinciples of Linked Data facilitatestheintegration of stream data totheincreasingnumber of Linked Data collections<br />Earlyreferences…<br />AmitSheth, CoryHenson, and SatyaSahoo, "Semantic Sensor Web," IEEE Internet Computing, July/August 2008, p. 78-83<br />SequedaJ, Corcho O. LinkedStream Data: A Position Paper. Proceedingsof the 2nd International WorkshoponSemantic Sensor Networks, SSN 09<br />Le-Phuoc D, Parreira JX, Hauswirth M. Challengesin LinkedStream Data Processing: A Position Paper. Proceedingsof the3rd International WorkshoponSemantic Sensor Networks, SSN 10<br />
  17. 17. LSD (LinkedStream/Sensor Data?)<br />Very popular substance in the 60s<br />17<br />
  18. 18. Let’schecksomeexamples<br />Meteorological data in Spain: automaticweatherstations<br />http://aemet.linkeddata.es/<br />A number of SSSW2011 studentsinvolved in it<br />Open reviewingpossibilitiesavailable at theSemantic Web Journal: <br />http://www.semantic-web-journal.net/content/transforming-meteorological-data-linked-data<br />Live sensors in Slovenia<br />One of our SSSW2011 studentsinvolved in it;-)<br />http://sensors.ijs.si/<br />ChannelCoastalObservatory in Southern UK<br />http://webgis1.geodata.soton.ac.uk/flood.html<br />And some more from DERI Galway, Knoesis, CSIRO, etc.<br />18<br />
  19. 19. PART II<br />How to create, publish and consume Linked Stream Data<br />
  20. 20. HowtodealwithLinkedStream/Sensor Data<br />Ingredients<br />Anontologymodel<br />Goodpractices in URI definition<br />Supportingsemantictechnology<br />SPARQL extensions<br />Tohandle time and tuplewindows<br />Tohandlespatio-temporal constraints<br />REST APIstoaccessit<br />A couple of lessonslearned<br />
  21. 21. <ul><li>Several efforts since approx. 2005
  22. 22. State of the art on sensor network ontologies in the report below
  23. 23. In 2009, a W3C incubator group was started, which has just finished
  24. 24. Lots of good people there
  25. 25. Final report: http://www.w3.org/2005/Incubator/ssn/XGR-ssn-20110628/
  26. 26. Ontology: http://purl.oclc.org/NET/ssnx/ssn
  27. 27. A good number of internal and external references to SSN Ontology
  28. 28. http://www.w3.org/2005/Incubator/ssn/wiki/Tagged_Bibliography
  29. 29. SSN Ontology paper submitted to Journal of Web Semantics</li></ul>SSN ontologies. History<br />
  30. 30. Deployment<br />System<br />OperatingRestriction<br />Process<br />Device<br />PlatformSite<br />Data<br />Skeleton<br />ConstraintBlock<br />MeasuringCapability<br />Overview of the SSN ontology modules<br />
  31. 31. deploymentProcesPart only<br />Deployment<br />System<br />OperatingRestriction<br />hasSubsystem only, some<br />hasSurvivalRange only<br />SurvivalRange<br />DeploymentRelatedProcess<br />hasDeployment only<br />System<br />OperatingRange<br />Deployment<br />hasOperatingRange only<br />deployedSystem only<br />deployedOnPlatform only<br />Process<br />hasInput only<br />inDeployment only<br />Device<br />Input<br />Device<br />Process<br />onPlatform only<br />PlatformSite<br />Output<br />Platform<br />hasOutput only, some<br />attachedSystem only<br />Data<br />Skeleton<br />implements some<br />isProducedBy some<br />Sensor<br />Sensing<br />hasValue some<br />SensorOutput<br />sensingMethodUsed only<br />detects only<br />SensingDevice<br />observes only<br />SensorInput<br />ObservationValue<br />isProxyFor only<br />Property<br />isPropertyOf some<br />includesEvent some<br />observedProperty only<br />observationResult only<br />hasProperty only, some<br />observedBy only<br />Observation<br />FeatureOfInterest<br />featureOfInterest only<br />ConstraintBlock<br />MeasuringCapability<br />hasMeasurementCapability only<br />forProperty only<br />inCondition only<br />inCondition only<br />Condition<br />MeasurementCapability<br />Overview of the SSN ontologies<br />
  32. 32. SSN Ontology. Sensor and environmental properties<br />Skeleton<br />Property<br />Communication<br />MeasuringCapability<br />hasMeasurementProperty only<br />MeasurementCapability<br />MeasurementProperty<br />Accuracy<br />Frequency<br />Precision<br />Resolution<br />Selectivity<br />Latency<br />DetectionLimit<br />Drift<br />MeasurementRange<br />ResponseTime<br />Sensitivity<br />EnergyRestriction<br />OperatingRestriction<br />hasOperatingProperty only<br />OperatingProperty<br />OperatingRange<br />EnvironmentalOperatingProperty<br />MaintenanceSchedule<br />OperatingPowerRange<br />hasSurvivalProperty only<br />SurvivalRange<br />SurvivalProperty<br />EnvironmentalSurvivalProperty<br />SystemLifetime<br />BatteryLifetime<br />
  33. 33. A usageexample<br />Upper<br />SWEET<br />DOLCE UltraLite<br />SSG4Env <br />infrastructure<br />SSN<br />Schema<br />Service<br />External<br />OrdnanceSurvey<br />FOAF<br />Flood domain<br />CoastalDefences<br />AdditionalRegions<br />Role<br />25<br />
  34. 34. AEMET Ontology Network<br />83 classes<br />102 objectproperties<br />80 datatypeproperties<br />19 instances<br />SROIQ(D)<br />
  35. 35. HowtodealwithLinkedStream/Sensor Data<br />Ingredients<br />Anontologymodel<br />Goodpractices in URI definition<br />Supportingsemantictechnology<br />SPARQL extensions<br />Tohandle time and tuplewindows<br />Tohandlespatio-temporal constraints<br />REST APIstoaccessit<br />A couple of lessonslearned<br />
  36. 36. Goodpractices in URI Definition<br />Sorry, no clearpracticesyet…<br />
  37. 37. Goodpractices in URI Definition<br />Wehavetoidentify…<br />Sensors<br />Features of interest<br />Properties<br />Observations<br />Debate betweenbeingobservationor sensor-centric<br />Observation-centricseemsto be thewinner<br />Forsomedetails of sensor-centric, check [Sequeda and Corcho, 2009]<br />
  38. 38. HowtodealwithLinkedStream/Sensor Data<br />Ingredients<br />Anontologymodel<br />Goodpractices in URI definition<br />Supportingsemantictechnology<br />SPARQL extensions<br />Tohandle time and tuplewindows<br />Tohandlespatio-temporal constraints<br />REST APIstoaccessit<br />A couple of lessonslearned<br />
  39. 39. Queries to Sensor/Stream Data<br />SNEEql<br />RSTREAM SELECT id, speed, direction <br />FROM wind[NOW];<br />Streaming SPARQL<br />PREFIX fire: <http://www.semsorgrid4env.eu/ontologies/fireDetection#><br />SELECT ?sensor ?speed ?direction<br />FROM STREAM <http://…/SensorReadings.rdf> WINDOW RANGE 1 MS SLIDE 1 MS<br />WHERE {<br /> ?sensor a fire:WindSensor;<br />fire:hasMeasurements ?WindSpeed, ?WindDirection.<br /> ?WindSpeed a fire:WindSpeedMeasurement;<br />fire:hasSpeedValue ?speed;<br />fire:hasTimestampValue ?wsTime.<br /> ?WindDirection a fire:WindDirectionMeasurement;<br />fire:hasDirectionValue ?direction;<br />fire:hasTimestampValue ?dirTime.<br /> FILTER (?wsTime == ?dirTime)<br />}<br />C-SPARQL<br />REGISTER QUERY WindSpeedAndDirection AS<br />PREFIX fire: <http://www.semsorgrid4env.eu/ontologies/fireDetection#><br />SELECT ?sensor ?speed ?direction<br />FROM STREAM <http://…/SensorReadings.rdf> [RANGE 1 MSEC SLIDE 1 MSEC]<br />WHERE { …<br />31<br />Semantically Integrating Streaming and Stored Data<br />
  40. 40. SPARQL-STR v1<br />32<br />Sensors, Mappings and Queries<br />SELECT ?waveheight<br />FROM STREAM <www.ssg4env.eu/SensorReadings.srdf> <br />[FROM NOW -10 MINUTES TO NOW STEP 1 MINUTE]<br />WHERE { <br /> ?WaveObs a sea:WaveHeightObservation;<br /> sea:hasValue ?waveheight; }<br />SELECT measuredFROM wavesamples [NOW -10 MIN]<br />conceptmap-def WaveHeightMeasurement<br />virtualStream <http://ssg4env.eu/Readings.srdf> <br />uri-as concat('ssg4env:WaveSM_',<br />wavesamples.sensorid,wavesamples.ts) <br />attributemap-defhasValue<br />operation constant <br />has-columnwavesamples.measured<br />dbrelationmap-def isProducedBy <br />toConcept Sensor <br />joins-via condition equals <br />has-column sensors.sensorid <br />has-columnwavesamples.sensorid<br />conceptmap-def Sensor <br />uri-as concat('ssg4env:Sensor_',sensors.sensorid) <br /> attributemap-def hasSensorid <br />operation constant <br />has-column sensors.sensorid<br />Query<br />translation<br />SNEEql<br />SPARQLStream<br />Query Processing<br />Stream-to-Ontology<br />mappings<br />Client<br />Sensor Network <br />Data<br />translation<br />[tuples]<br />[triples]<br />S2O Mappings<br />
  41. 41. SPARQL-STR v2<br />SPARQLStream algebra(S1 S2 Sm) <br />GSN<br />Query<br />translation<br />q<br />SNEEql, GSN API<br />Sensor Network (S1)<br />SPARQLStream (Og) <br />Relational DB (S2)<br />Query Evaluator<br />Stream-to-Ontology<br />Mappings (R2RML)<br />Client<br />Stream Engine (S3)<br />RDF Store (Sm)<br />Data<br />translation<br />[tuples]<br />[triples]<br />Ontology-based Streaming Data Access Service<br />
  42. 42. SwissEx<br />34<br />Sensors, Mappings and Queries<br />Global Sensor Networks, deployment for SwissEx.<br />Distributedenvironment: GSN Davos, GSN Zurich, etc.<br />In each site, a number of sensorsavailable<br />Each one withdifferentschema<br />Metadatastored in wiki<br />Federatedmetadata management:<br />Jeung H., Sarni, S., Paparrizos, I., Sathe, S., Aberer, K., Dawes, N., Papaioannus, T., Lehning, M.EffectiveMetadata Management in federatedSensor Networks.  in SUTC, 2010<br />Sensor observations<br />Sensormetadata<br />
  43. 43. Gettingthingsdone<br />Transformed wiki metadata to SSN instances in RDF<br />Generated R2RML mappings for all sensors<br />Implementation of Ontology-basedquerying over GSN<br />Fronting GSN with SPARQL-Stream queries<br />Numbers:<br />28 Deployments<br />Aprox. 50 sensors in eachdeployment<br />More than 1500 sensors<br />Live updates. Lowfrequency<br />Access to all metadata/not all data<br />35<br />Sensors, Mappings and Queries<br />
  44. 44. SensorMetadata<br />36<br />Sensors, Mappings and Queries<br />station<br />location<br />sensors<br />model<br />properties<br />
  45. 45. Sensor Data: Observations<br />37<br />Sensors, Mappings and Queries<br />Heterogeneity<br />Integration<br />
  46. 46. SPARQL-STR + GSN<br />
  47. 47. Uglylittledemo<br />Problems<br />Toomanysensors<br />TooHeterogeneous<br />Anysensorsavailable in thisregion?<br />Sensorsthatmeasurewind speed?<br />How about getting the data?<br />39<br />Sensors, Mappings and Queries<br />
  48. 48. HowtodealwithLinkedStream/Sensor Data<br />Ingredients<br />Anontologymodel<br />Goodpractices in URI definition<br />Supportingsemantictechnology<br />SPARQL extensions<br />Tohandle time and tuplewindows<br />Tohandlespatio-temporal constraints<br />REST APIstoaccessit<br />A couple of lessonslearned<br />
  49. 49. Sensor High-level API<br />Source: Kevin Page and rest of Southampton’steam at SemsorGrid4Env<br />
  50. 50. Sensor High-level API<br />Source: Kevin Page and rest of Southampton’steam at SemsorGrid4Env<br />
  51. 51. API definition<br />Source: Kevin Page and rest of Southampton’steam at SemsorGrid4Env<br />
  52. 52. LessonsLearned<br />High-level (partI)<br />Sensor data isyetanothergoodsource of data withsomespecialproperties<br />Everythingthatwe do withourrelationaldatasetsorother data sources can be done with sensor data<br />Practicallessonslearned (part II)<br />Manageseparatelydata and metadata of thesensors<br />Data shouldalways be separatedbetweenrealtime-data and historical-data<br />Use the time formatxsd:dateTimeand the time zone<br />Graphicalrepresentation of data forweeksormonthsisnot trivial anyway<br />
  53. 53. Semantics, Sensor Networks and Linked Stream/Sensor Data<br />8th Summer School on Ontological Engineering and Semantic Web (SSSW2011)Cercedilla, July 15th 2011<br />Oscar Corcho<br />Acknowledgments: allthoseidentified in slides + the SemsorGrid4Env team (Jean Paul Calbimonte, Alasdair Gray, Kevin Page, etc.), the AEMET team at OEG-UPM (GhislainAtemezing, Daniel Garijo, José Mora, María Poveda, Daniel Vila, Boris Villazón) + Pablo Rozas (AEMET) <br />

×