4th International Workshop on Semantic Sensor Networks                        ISWC 2011Semantic Sensor Data Search in a   ...
Outline• Introduction    • Sensor data    • Sensor metadata•   Ontological representation•   Mapping sensor streams•   Sen...
Swiss-Experiment  • FP7 Network of Excellence             Environmental and GeoScience research                           ...
Swiss-Experiment Infrastructure• Global Sensor Networks, deployment for SwissEx.• Distributed environment: GSN Davos, GSN ...
Sensor Metadata        station            location                       sensorsmodel                        properties   ...
Sensor Metadata• What properties are measured• Which sensors available• Where are they located• How are they configured• W...
Sensor Data: ObservationsHeterogeneityIntegration  7
W3C SSN-XG Ontology• SSN Ontology                             ssn:isProducedBy                                            ...
W3C SSN-XG Ontology                                                          ssn:OperatingRange                           ...
Exampleswissex:Sensor1   rdf:type ssn:Sensor;   ssn:onPlatform swissex:Station1;   ssn:observes [rdf:type sweetSpeed:WindS...
Exampleswissex:WindSpeedObservation1   rdf:type ssn:Observation;   ssn:featureOfInterest [rdf:type sweetAtmoWind:Wind];   ...
Where is the Data?GSN server instance                       ..                       wan7                       sensor1   ...
Creating Mappings                                                                 ssn:observedProperty                    ...
R2RML• RDB2RDF W3C Group, R2RML Mapping language:     • http://www.w3.org/2001/sw/rdb2rdf/r2rml/  :Wan4WindSpeed a rr:Trip...
Searching for Sensors• Transformed wiki metadata to SSN instances in RDF• Generated R2RML mappings for all sensors• Number...
Sensor Data Portal Application• Problems   • Too many sensors   • Too Heterogeneous• Any sensors available in this region?...
Playing with it17
Querying the Observations• Implementation of Ontology-based querying over  GSN• Using the R2RML mappings• Fronting GSN wit...
Query & Data Translation  SELECT ?waveheight  FROM STREAM <www.ssg4env.eu/SensorReadings.srdf>  [NOW -10 MINUTES TO NOW]  ...
Data Access• GSN Web Services• GSN URL API     • Compose the query as a URL:        http://montblanc.slf.ch :22001/ multid...
Using the Mappings                                                                             π timed,                   ...
Algebra expressionsπ timed,              http://montblanc.slf.ch :22001/ multidata ?vs [0]= wan7 &                      fi...
Algebra construction              π timed,                   sp_windwindsensor1windsensor2   σ sp_wind>10              ω 5...
Static optimization           π timed,             π timed,         π timed,                    sp_wind        windvalue  ...
Querying the Observations                        SELECT ?waveheight                        FROM STREAM <www.ssg4env.eu/Sen...
Translation overheadSensors, Mappings and Queries   26
Conclusions• Use of the SSN Ontology   • Sensor metadata   • Sensor observations• Using R2RML mappings for virtual sensors...
TODO•   Explore expressivity of queries•   Expose as Linked Stream Data•   Integrate with stored RDF data•   Apply to othe...
Thanks!http://code.google.com/p/semanticstreams/           Questions, please.         jp.calbimonte@upm.es                ...
Upcoming SlideShare
Loading in …5
×

SSN11: Semantic Sensor Data Search in a Federated Sensor Network

1,703 views

Published on

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,703
On SlideShare
0
From Embeds
0
Number of Embeds
142
Actions
Shares
0
Downloads
37
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

SSN11: Semantic Sensor Data Search in a Federated Sensor Network

  1. 1. 4th International Workshop on Semantic Sensor Networks ISWC 2011Semantic Sensor Data Search in a Federated Sensor Network Jean-Paul Calbimonte1, Hoyoung Jeung2, Oscar Corcho1 and Karl Aberer2 1Ontology Engineering Group. Facultad de Informática, Universidad Politécnica de Madrid. 2Distributed Information Systems Laboratory School of Computer Science & Communication Systems, EPFL. jp.calbimonte@upm.es Date: 23/10/2011
  2. 2. Outline• Introduction • Sensor data • Sensor metadata• Ontological representation• Mapping sensor streams• Sensor data search• Query translation • GSN URL API• Conclusions 2
  3. 3. Swiss-Experiment • FP7 Network of Excellence Environmental and GeoScience research Swiss Alps GeoResearcher ... Snow, Real-time Wind, ... data ... Radiation. Lots of stuff I want data to create my•How much snow is lost to evaporation? models and•Snow redistribution by wind compare• Wind erosion of sand• ... 3
  4. 4. Swiss-Experiment Infrastructure• Global Sensor Networks, deployment for SwissEx.• Distributed environment: GSN Davos, GSN Zurich, etc. • In each site, a number of sensors available • Each one with different Sensor observations schema• Metadata stored in wiki • Federated metadata management: • Sensor metadata Jeung H., Sarni, S., Paparrizos, I., Sathe, S., Aberer, K., Dawes, N., Papaioannus, T., Lehning, M.Effective Metadata Management in federated Sensor Networks. in SUTC, 2010 4
  5. 5. Sensor Metadata station location sensorsmodel properties 5
  6. 6. Sensor Metadata• What properties are measured• Which sensors available• Where are they located• How are they configured• Who is responsible 6
  7. 7. Sensor Data: ObservationsHeterogeneityIntegration 7
  8. 8. W3C SSN-XG Ontology• SSN Ontology ssn:isProducedBy ssn:SensorOutput ssn:Sensor ssn:observedBy ssn:observationResult ssn:hasValue ssn:Observation ssn:ObservationValue ssn:observes ssn:featureOfInterest quantityValue ssn:observedProperty ssn:FeatureOfInterest xsd:datatype ssn:Property ssn:hasProperty 8
  9. 9. W3C SSN-XG Ontology ssn:OperatingRange ssn:hasOperatingRange ssn:Deployment ssn:Sensing ssn:hasDeployment ssn:System ssn:implements ssn:deployedOnPlatform ssn:Sensor ssn:onPlatform ssn:Device ssn:Platformssn:hasMeasurementCapability ssn:MeasurementCapability ssn:SensingDevice 9
  10. 10. Exampleswissex:Sensor1 rdf:type ssn:Sensor; ssn:onPlatform swissex:Station1; ssn:observes [rdf:type sweetSpeed:WindSpeed].swissex:Sensor2 station rdf:type ssn:Sensor; ssn:onPlatform swissex:Station1; ssn:observes [rdf:type sweetTemp:Temperature].swissex:Station1 :hasGeometry [ rdf:type wgs84:Point; wgs84:lat "46.8037166"; wgs84:long "9.7780305"]. 10
  11. 11. Exampleswissex:WindSpeedObservation1 rdf:type ssn:Observation; ssn:featureOfInterest [rdf:type sweetAtmoWind:Wind]; ssn:observedProperty [rdf:type sweetSpeed:WindSpeed]; ssn:observationResult [rdf:type ssn:SensorOutput; ssn:hasValue [qudt:numericValue "6.245"^^xsd:double]]; ssn:observationResultTime [time:inXSDDatatime "2011-10-26T21:32:52"]; ssn:observedBy swissex:Sensor1 ; WindSpeed : 6.245 At: 2011-10- 26T21:32:52 11
  12. 12. Where is the Data?GSN server instance .. wan7 sensor1 sensor2 timed: datetime PK GSN sensor3 sp_wind: float … Mappings ssn:Observation 12
  13. 13. Creating Mappings ssn:observedProperty ssn:Observation ssn:Property http://swissex.ch/data# ssn:observationResult Wan7/WindSpeed/Observation{timed} sweetSpeed:WindSpeed wan7 ssn:SensorOutputtimed: datetime PK http://swissex.ch/data#sp_wind: float ssn:hasValue Wan7/ WindSpeed/ ObsOutput{timed} ssn:ObservationValue http://swissex.ch/data# qudt:numericValue Wan7/WindSpeed/ObsValue{timed} xsd:decimal sp_wind 13
  14. 14. R2RML• RDB2RDF W3C Group, R2RML Mapping language: • http://www.w3.org/2001/sw/rdb2rdf/r2rml/ :Wan4WindSpeed a rr:TriplesMapClass; rr:tableName "wan7"; rr:subjectMap [ rr:template "http://swissex.ch/ns#WindSpeed/Wan7/{timed}"; rr:class ssn:ObservationValue; rr:graph ssg:swissexsnow.srdf ]; rr:predicateObjectMap [ rr:predicateMap [ rr:predicate ssn:hasQuantityValue ]; rr:objectMap[ rr:column "sp_wind" ] ]; .<http://swissex.ch/ns#/WindSpeed/Wan7/2011-05-20:20:00 >a ssn:ObservationValue<http://swissex.ch/ns#/WindSpeed/Wan7/2011-05-20:20:00 >ssn:hasQuantityValue " 4.5" 14
  15. 15. Searching for Sensors• Transformed wiki metadata to SSN instances in RDF• Generated R2RML mappings for all sensors• Numbers: 28 Deployments • Aprox. 50 sensors in each deployment. More than 1500 sensorsSELECT DISTINCT?lat ?long ?platformName ?deploymentNameWHERE { ?sensor ssn:observes [a prop:MotionProperty]; ?system ssn:hasSubSystem ?sensor; ssn:onPlatform ?platform; ssn:hasDeployment ?deployment. ?deployment foaf:name ?deploymentName. ?platform dul:hasLocation [swissex:hasGeometry ?link]; foaf:name ?platformName. ?link omgeo:within(46.3 8.7 47.2 9.8); geo-pos:lat ?lat; geo-pos:long ?long. } 15
  16. 16. Sensor Data Portal Application• Problems • Too many sensors • Too Heterogeneous• Any sensors available in this region?• Sensors that measure wind speed?• How about getting the data? 16
  17. 17. Playing with it17
  18. 18. Querying the Observations• Implementation of Ontology-based querying over GSN• Using the R2RML mappings• Fronting GSN with SPARQL-Stream queries• Query & Data translation process 18
  19. 19. Query & Data Translation SELECT ?waveheight FROM STREAM <www.ssg4env.eu/SensorReadings.srdf> [NOW -10 MINUTES TO NOW] WHERE { ?WaveObs a ssn:Observation; sea:hasValue ?waveheight; } Query q translation Target query Sensor Networks SPARQLStream q’ mappings QueryClient Processing d’ d Data [tuple] [tuple] [triple] translation Ontology-based sensor query service 19
  20. 20. Data Access• GSN Web Services• GSN URL API • Compose the query as a URL: http://montblanc.slf.ch :22001/ multidata ?vs [0]= wan7 & field [0]= sp_wind & from =15/05/2011+05:00:00& to =15/05/2011+10:00:00& c_vs [0]= wan7 & c_field [0]= sp_wind & c_min [0]=10 SELECT sp_wind FROM wan7 [NOW -5 HOUR] WHERE sp_wind >10 ? SPARQL-StreamCalbimonte, J-P., Corcho O., Gray, A. Enabling Ontology-based Access to Streaming Data Sources. In ISWC 2010. 20
  21. 21. Using the Mappings π timed, sp_windSELECT ?waveheight σFROM STREAM <www.ssg4env.eu/SensorReadings.srdf>[NOW – 5 HOUR TO NOW] sp_wind>10WHERE { ?WaveObs a ssn:ObservationValue; qudt:numericalValue ?waveheight; ω 5 Hour FILTER (?waveheight>10) } wan7 wan7 ssn:ObservationValue http://swissex.ch/data# timed: datetime PK qudt:numericalValue Wan7/WindSpeed/ObsValue{timed} sp_wind: float xsd:datatype sp_wind 21
  22. 22. Algebra expressionsπ timed, http://montblanc.slf.ch :22001/ multidata ?vs [0]= wan7 & field [0]= sp_wind & from =15/05/2011+05:00:00& to =15/05/2011+10:00:00& sp_wind c_vs [0]= wan7 & c_field [0]= sp_wind & c_min [0]=10σ sp_wind>10ω 5 Hour SELECT sp_wind FROM wan7 [NOW -5 HOUR] WHERE sp_wind >10wan7 22
  23. 23. Algebra construction π timed, sp_windwindsensor1windsensor2 σ sp_wind>10 ω 5 Hour wan7 23
  24. 24. Static optimization π timed, π timed, π timed, sp_wind windvalue windvalue σ sp_wind>10 σ windvalue>10 σ windvalue>10 ω 5 Hour ω 5 Hour ω 5 Hour wan7 windsensor1 windsensor2Sensors, Mappings and Queries 24
  25. 25. Querying the Observations SELECT ?waveheight FROM STREAM <www.ssg4env.eu/SensorReadings.srdf> [NOW -10 MINUTES TO NOW STEP 1 MINUTE] WHERE { ?WaveObs a sea:WaveHeightObservation; :22001/ multidata ?vs [0]= wan7 & http://montblanc.slf.ch field [0]= sp_wind sea:hasValue ?waveheight; } Query:Wan4WindSpeed a rr:TriplesMapClass; translation GSN rr:tableName "wan7"; SPARQLStream API rr:subjectMap [ rr:template"http://swissex.ch/ns#WindSpeed/Wan7/{timed}";Client rr:class ssn:ObservationValue; rr:graphssg:swissexsnow.srdf ]; Mappings Query rr:predicateObjectMap [ rr:predicateMap [ Processingrr:predicate ssn:hasQuantityValue ]; Sensor rr:objectMap[ rr:column "sp_wind" ] ]; Network [tuples] Data [triples] translation R2RML Mappings 25
  26. 26. Translation overheadSensors, Mappings and Queries 26
  27. 27. Conclusions• Use of the SSN Ontology • Sensor metadata • Sensor observations• Using R2RML mappings for virtual sensors• We can translate to query languages and APIs • Abstract expressions for representing queries• Applications • Improved sensor search • Federated environment • Schema heterogeneity 27
  28. 28. TODO• Explore expressivity of queries• Expose as Linked Stream Data• Integrate with stored RDF data• Apply to other environments • Complex-event-processing engines • OGC SOS Services • Pachube • etc• Experimentation • Latency • Performance • Tuple rates • Query complexity 28
  29. 29. Thanks!http://code.google.com/p/semanticstreams/ Questions, please. jp.calbimonte@upm.es 29

×