SlideShare une entreprise Scribd logo
1  sur  29
Date: 9/11/2010
Enabling Ontology-based Access to
Streaming Data Sources
Jean-Paul Calbimonte1, Oscar Corcho1, Alasdair J G Gray2
1Ontology Engineering Group. Departamento de Inteligencia Artificial.
Facultad de Informática, Universidad Politécnica de Madrid.
Campus de Montegancedo s/n. 28660 Boadilla del Monte. Madrid. Spain
jp.calbimonte@upm.es;ocorcho@fi.upm.es
2School of Computer Science, The University of Manchester,
Oxford Road, Manchester M13 9PL, United Kingdom
a.gray@cs.man.ac.uk
9th International Semantic Web Conference ISWC 2010
Shanghai, China
Outline
• Introduction & Motivation
• Background
• Approach
• Mapping Streams to Ontologies
• SPARQL Stream
• Query Translation
• Example
• Future work
• Conclusions
2Enabling Ontology-based Access to Streaming Data Sources
Introduction & Scope
3
• Streaming Data
(t9, a1, a2, ... , an)
(t8, a1, a2, ... , an)
(t7, a1, a2, ... , an)
...
...
(t1, a1, a2, ... , an)
...
...
Streaming
Data
• Continuously appended data
• Potentially infinite
• Time-stamped tuples
• Continuous queries
• Changes of values over time
• Latest used in queries
• Ubiquitous data capture
• Data processing
• Cheap
• Noisy, Unreliable
• Low computational, power resources, storage
• Sensor technologies
Enabling Ontology-based Access to Streaming Data Sources
• Applications in security surveillance, healthcare provision, environmental
monitoring, you name it.
Motivation
4Enabling Ontology-based Access to Streaming Data Sources
Emergency
planner
Flood risk alert:
South East England
...
...
...
Real-time
data
Meteorological
forecasts
Flood defences
data
Other sources
• Detect conditions likely to cause a flood
• Present data model in terms of the user domain: e.g. Flood risk assessment
Example:
• “provide me with the wind speed observations average over the last minute in
the Solent region, if it is higher than the average of the last 2 to 3 hours”
Wave,
Wind,
Tide
Motivation
5Enabling Ontology-based Access to Streaming Data Sources
• Ontologies can be used as such a common model
• Need to provide solution for:
• Establish mappings between ontological models and
streaming data source schemas
• Access streaming data sources through queries over
ontology models
Background – Ontology-based Data Access
6Enabling Ontology-based Access to Streaming Data Sources
Ontology-based
Data Access
R2O + ODEMapster
D2RQ
SquirrelRDF
RDBToOnto
Relational.OWL
SPASQL
Virtuoso
MASTRO
Query/Data
Transformation
Ontological
Models
Relational
Schemas
Mapping
Document
Generate Semantic Web content from existing relational data sources
e.g. SPARQL
e.g. SQL
Background – Querying Relational Data Streams
7Enabling Ontology-based Access to Streaming Data Sources
Streaming Data
STREAM
Aurora/Borealis
Cougar
TinyDB
SNEE
e1
e2e1
e2 e3
e2e1 e3
e1
e4
t t+1 t+2 t+3 t+4 t+5
WINDOW [tnow TO tnow-2] SLIDE 1
Transform infinite sequence
of tuples to bounded bag
Window-to-Stream operators:
convert stream of windows to
stream of tuples
...
...
CQL
SNEEql
TinyQL
Query engines
Query languages
Event Streams
Acquisitional Streams
Ontology-based Streaming Data Access
8Enabling Ontology-based Access to Streaming Data Sources
Query
translation
Query Evaluator
Client
Stream-to-Ontology
mappings
SPARQLSream (Og)
[tuples]
Stream
Engine (S3)
Ontology-based Streaming Data Access Service
Relational
DB (S2)
Sensor
Network (S1)
RDF Store
(Sm)
SPARQLSream algebra(S1 S2 Sm)
Data
translation
q
[triples]
SNEEql
Ontology-based Streaming Data Access
9Enabling Ontology-based Access to Streaming Data Sources
• Mappings from relational streams to ontological concepts
• Extend stored data schema mappings
• Study translation semantics
• Provide with a stream query language at ontological level
• Use notion of RDF stream
• Extend SPARQL
• Window operator, window-to-stream operators
SPARQLStream
10Enabling Ontology-based Access to Streaming Data Sources
• RDF-Stream ...
...
( <si-1,pi-1, oi-1>, ti-1 ),
( <si, pi, oi>, ti ),
( <si+1,pi+1, oi+1>, ti+1 ),
...
...
Example:
• “provide me with the wind speed observations over the last minute in the Solent Region ”
cd:Observation
xsd:double
cd:observationResult
...
...
( <ssg4e:Obs1,rdf:type, cd:Observation>, ti ),
( <ssg4e:Obs1,cd:observationResult,”34.5”>, ti ),
( <ssg4e:Obs2,rdf:type, cd:Observation>, ti+1 ),
( <ssg4e:Obs2,cd:observationResult,”20.3”>, ti+1 ),
...
...
STREAM
<http://www.semsorgrid4env.eu/ccometeo.srdf>
SPARQLStream
11Enabling Ontology-based Access to Streaming Data Sources
Example:
• “provide me with the wind speed observations over the last minute in the Solent Region ”
cd:Observation
xsd:double
cd:observationResult
PREFIX cd:
<http://www.semsorgrid4env.eu/ontologies/CoastalDefences.owl#>
PREFIX sb: <http://www.w3.org/2009/SSN-
XG/Ontologies/SensorBasis.owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
SELECT ?windspeed ?windts
FROM STREAM <http://www.semsorgrid4env.eu/ccometeo.srdf>
[ NOW – 1 MINUTE TO NOW – 0 MINUTES ]
WHERE
{
?WindObs a cd:Observation;
cd:observationResult ?windspeed;
cd:observationResultTime ?windts;
cd:observedProperty ?windProperty;
cd:featureOfInterest ?windFeature.
?windFeature a cd:Feature;
cd:locatedInRegion cd:SolentCCO.
?windProperty a cd:WindSpeed.
}
cd:Feature
cd:featureOfInterest
cd:Property
cd:observedProperty
cd:locatedInRegion
cd:Region
Ontology-based Streaming Data Access
12Enabling Ontology-based Access to Streaming Data Sources
Query
translation
Query Evaluator
Client
Stream-to-Ontology
mappings
SPARQLSream (Og)
[tuples]
Stream
Engine (S3)
Ontology-based Streaming Data Access Service
Relational
DB (S2)
Sensor
Network (S1)
RDF Store
(Sm)
SPARQLSream algebra(S1 S2 Sm)
Data
translation
q
[triples]
SNEEql
S2O Mappings
13Enabling Ontology-based Access to Streaming Data Sources
• R2O Mappings
• Schema descriptions (probably mostly unused)
<has-table name="raingauge">
<keycol-desc name="id"/>
<keycol-desc name="ts"/>
<nonkeycol-desc name="level"/>
</has-table>
<has-stream name="windsamples" streamType="push">
<keycol-desc name="id"/>
<keycol-desc name="ts"/>
<timestamp-desc name="ts" />
<nonkeycol-desc name="speed"/>
<nonkeycol-desc name="temperature"/>
<nonkeycol-desc name="direction"/>
</has-stream>
S2O Mappings
14Enabling Ontology-based Access to Streaming Data Sources
<conceptmap-def id="Observation_wind"
name="http://www.semsorgrid4env.eu/ontologies/CoastalDefences.owl#Observation"
virtualStream="http://www.semsorgrid4env/ccometeo.srdf">
<uri-as>
<operation oper-id="concat">
<arg-restriction on-param="string1">
<has-value>http://www.semsorgrid4env.eu/data#ObservationWind</has-value>
</arg-restriction>
<arg-restriction on-param="string2">
<has-column>meteostream.DateTime</has-column>
</arg-restriction>
</operation>
</uri-as>
<attributemap-def
name="http://www.semsorgrid4env.eu/ontologies/CoastalDefences.owl#observationResult"
dataType="xsd:double">
<selector>
<aftertransform>
<operation oper-id="constant">
<arg-restriction on-param="const-val">
<has-column>meteostream.Hs</has-column>
</arg-restriction>
</operation>
</aftertransform>
</selector>
</attributemap-def>
cd:Observation
xsd:double
cd:observationResult
meteostream
Datetime: long
Hs : float
Lon: float
Lat: float
S2O Mappings
15Enabling Ontology-based Access to Streaming Data Sources
cd:Observation
xsd:double
cd:observationResult envdata_hornsea
Datetime: long
Hs : float
Lon: float
Lat: float
envdata_westbay
Datetime: long
Hs : float
Lon: float
Lat: float
envdata_milford
Datetime: long
Hs : float
Lon: float
Lat: float
envdata_rhylflats
Datetime: long
Hs : float
Lon: float
Lat: float
U
U
U
<union name="meteostream">
<map value="http://www.semsorgrid4env.eu/ontologies/
CoastalDefences.owl#SolentCCO">
<extent name="envdata_hornsea"></extent>
<extent name="envdata_rhylflats"></extent>
<extent name="envdata_milford"></extent>
<extent name="envdata_westbay"></extent>
</map>
</union>
• Union of extents-streams
Ontology-based Streaming Data Access
16Enabling Ontology-based Access to Streaming Data Sources
Query
translation
Query Evaluator
Client
Stream-to-Ontology
mappings
SPARQLSream (Og)
[tuples]
Stream
Engine (S3)
Ontology-based Streaming Data Access Service
Relational
DB (S2)
Sensor
Network (S1)
RDF Store
(Sm)
SPARQLSream algebra
Data
translation
q
[triples]
SNEEql
Query Translation
17Enabling Ontology-based Access to Streaming Data Sources
• Queries:
SELECT ?y
WHERE
{ ?x a cd:Observation;
cd:observationResult ?y. }
SELECT ?y
FROM STREAM < STREAM <http://www.semsorgrid4env.eu/ccometeo.srdf>
[ NOW – 1 MINUTE TO NOW – 0 MINUTES ] >
WHERE
{ ?x a cd:Observation;
cd:observationResult ?y. }
Query Translation
18Enabling Ontology-based Access to Streaming Data Sources
• Mappings:
query algebra expression
over sources
cd:Observation
xsd:double
cd:observationResult
envdata_milford
Datetime: long
Hs : float
Lon: float
Lat: float
envdata_milford
Datetime
Hs
Query Translation
19Enabling Ontology-based Access to Streaming Data Sources
envdata
_rhylflats
DateTime
Hs
cd:Observation
xsd:double
cd:observationResult
envdata_hornsea
Datetime: long
Hs : float
Lon: float
Lat: float
envdata_westbay
Datetime: long
Hs : float
Lon: float
Lat: float
envdata_milford
Datetime: long
Hs : float
Lon: float
Lat: float
envdata_rhylflats
Datetime: long
Hs : float
Lon: float
Lat: float
U
U
U
envdata
_milford
DateTime
Hs
envdata
_hornsea
DateTime
Hs
envdata
_westbay
DateTime
Hs
DateTime
Hs
Ontology-based Streaming Data Access
20Enabling Ontology-based Access to Streaming Data Sources
Query
translation
Query Evaluator
Client
Stream-to-Ontology
mappings
SPARQLSream (Og)
[tuples]
Stream
Engine (S3)
Ontology-based Streaming Data Access Service
Relational
DB (S2)
Sensor
Network (S1)
RDF Store
(Sm)
SPARQLSream algebra
Data
translation
q
[triples]
SNEEql
v
v
v
v
Query Execution
21
PREFIX cd: <http://www.semsorgrid4env.eu/ontologies/CoastalDefences.owl#>
PREFIX sb: <http://www.w3.org/2009/SSN-XG/Ontologies/SensorBasis.owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
SELECT ?waveheight ?wavets ?lat ?lon
FROM STREAM <http://www.semsorgrid4env/ccometeo.srdf>
WHERE
{
?WaveObs a cd:Observation;
cd:observationResult ?waveheight;
cd:observationResultTime ?wavets;
cd:observationResultLatitude ?lat;
cd:observationResultLongitude ?lon;
cd:observedProperty ?waveProperty;
cd:featureOfInterest ?waveFeature.
?waveFeature a cd:Feature;
cd:locatedInRegion cd:SouthEastEnglandCCO.
?waveProperty a cd:WaveHeight.
}
(SELECT Lon,timestamp,Hs,Lat FROM envdata_rhylflats) UNION
(SELECT Lon,timestamp,Hs,Lat FROM envdata_hornsea) UNION
(SELECT Lon,timestamp,Hs,Lat FROM envdata_milford) UNION
(SELECT Lon,timestamp,Hs,Lat FROM envdata_chesil) UNION
(SELECT Lon,timestamp,Hs,Lat FROM envdata_perranporth) UNION
(SELECT Lon,timestamp,Hs,Lat FROM envdata_westbay) UNION
(SELECT Lon,timestamp,Hs,Lat FROM envdata_pevenseybay)
envdata_rhylflats
Timestamp: long
Hs : float
Lon: float
Lat: float
envdata_hornsea
Observation
WaveHeight
Property
observed
Property
hasObservation
Result
xsd:float
locatedIn
Region
Ontologies Streams
S2O
Mapping
envdata_milford
envdata_chesil
envdata_westbay
Region
Feature
SPARQLStream
SNEEql
Enabling Ontology-based Access to Streaming Data Sources
Ontology-based Streaming Data Access
22Enabling Ontology-based Access to Streaming Data Sources
Query
translation
Query Evaluator
Client
Stream-to-Ontology
mappings
SPARQLSream (Og)
[tuples]
Stream
Engine (S3)
Ontology-based Streaming Data Access Service
Relational
DB (S2)
Sensor
Network (S1)
RDF Store
(Sm)
SPARQLSream algebra
Data
translation
q
[triples]
SNEEql
Data Translation
• Data translation:
Tagged tuples  SPARQL bound variables
<ns9:sparql>
<ns9:head>
<ns9:variable name="waveheight"/>
<ns9:variable name="wavets"/>
</ns9:head>
<ns9:results>
<ns9:result>
<ns9:binding name="waveheight">
<ns9:literal datatype="http://www.w3.org/2001/XMLSchema#double">4.850</ns9:literal>
</ns9:binding>
<ns9:binding name="wavets">
<ns9:literal datatype="http://www.w3.org/2001/XMLSchema#long">1272588663</ns9:literal>
</ns9:binding>
</ns9:result>
<ns9:result>
<ns9:binding name="waveheight">
<ns9:literal datatype="http://www.w3.org/2001/XMLSchema#double">2.1230</ns9:literal>
</ns9:binding>
<ns9:binding name="wavets">
<ns9:literal datatype="http://www.w3.org/2001/XMLSchema#long">1272587400</ns9:literal>
</ns9:binding>
</ns9:result>
</ns9:results>
</ns9:sparql>
waveheight wavets
4.850 1272588663
2.1230 1272587400
Implementation
24Enabling Ontology-based Access to Streaming Data Sources
• Design, implement
and deploy a
Semantic Integration
Service
• Extend existing ontology-
based data integration
models to take into
account sensor networks
streaming data, semantic
heterogeneity and quality
of service
Implementation
25Enabling Ontology-based Access to Streaming Data Sources
Integration
Query Service
IntegrationInterface
QueryInterface
PullInterface
Translator
ClientSNEE
-WS
S2O mappings
repository
SNEEql
IntegrateAs (DataResourceAddressList, S2O document)
DataResourceAddress
SPARQLQueryFactory (DataResourceName, SPARQLSTR )
DataResourceAddressaddQuery
GetStreamNewestItem(DataResourceName )
DataSetgetResultSet
repeat
CCO-
WS
Implementation
• Flood Warning Application
26Enabling Ontology-based Access to Streaming Data Sources
- Wave Height updated every 10 min
- Live data from sensor in buoys
- Over 30 deployments
Conclusions
Ontology-base data access
• Define stream extensions for R2O
• Define SPARQLStream language syntax and semantics
• Define S2O mappings-based translation semantics
Implementation
• Enable engine support for « S2O » documents,
SPARQLStream queries
• Enabled engine support for SNEEql translation and
connection
• Limited to non-distributed scenario initially
27Enabling Ontology-based Access to Streaming Data Sources
28
Future Works
• Ontology-based data access
• SPARQL construct expressions, aggregates, projected
operators
• Implement adapters for other streaming sources
• Add query rewriting algorithms
• Ontology-based streaming data integration
• Horizontal & vertical integration
• Integrate streaming + stored data
• RDF data sources integration
• Streaming query optimization
• Analyze cost models
• Streaming sources statistics and metadata
• Quantitative evaluation
28Enabling Ontology-based Access to Streaming Data Sources
Thanks!
29
Enabling Ontology-based Access to
Streaming Data Sources
Jean-Paul Calbimonte
jp.calbimonte@upm.es
Enabling Ontology-based Access to Streaming Data Sources

Contenu connexe

Tendances

Design for Scalability in ADAM
Design for Scalability in ADAMDesign for Scalability in ADAM
Design for Scalability in ADAM
fnothaft
 
Python for Financial Data Analysis with pandas
Python for Financial Data Analysis with pandasPython for Financial Data Analysis with pandas
Python for Financial Data Analysis with pandas
Wes McKinney
 

Tendances (20)

Spark: Taming Big Data
Spark: Taming Big DataSpark: Taming Big Data
Spark: Taming Big Data
 
TripleWave: Spreading RDF Streams on the Web
TripleWave: Spreading RDF Streams on the WebTripleWave: Spreading RDF Streams on the Web
TripleWave: Spreading RDF Streams on the Web
 
Connecting Stream Reasoners on the Web
Connecting Stream Reasoners on the WebConnecting Stream Reasoners on the Web
Connecting Stream Reasoners on the Web
 
Big data distributed processing: Spark introduction
Big data distributed processing: Spark introductionBig data distributed processing: Spark introduction
Big data distributed processing: Spark introduction
 
rasdaman: from barebone Arrays to DataCubes
rasdaman: from barebone Arrays to DataCubesrasdaman: from barebone Arrays to DataCubes
rasdaman: from barebone Arrays to DataCubes
 
Programming with Semantic Broad Data
Programming with Semantic Broad DataProgramming with Semantic Broad Data
Programming with Semantic Broad Data
 
(Semi-)Automatic analysis of online contents
(Semi-)Automatic analysis of online contents(Semi-)Automatic analysis of online contents
(Semi-)Automatic analysis of online contents
 
Yarn spark next_gen_hadoop_8_jan_2014
Yarn spark next_gen_hadoop_8_jan_2014Yarn spark next_gen_hadoop_8_jan_2014
Yarn spark next_gen_hadoop_8_jan_2014
 
04 open source_tools
04 open source_tools04 open source_tools
04 open source_tools
 
eScience Cluster Arch. Overview
eScience Cluster Arch. OvervieweScience Cluster Arch. Overview
eScience Cluster Arch. Overview
 
Ivan Herman - Semantic Web Activities @ W3C
Ivan Herman - Semantic Web Activities @ W3CIvan Herman - Semantic Web Activities @ W3C
Ivan Herman - Semantic Web Activities @ W3C
 
Design for Scalability in ADAM
Design for Scalability in ADAMDesign for Scalability in ADAM
Design for Scalability in ADAM
 
An Empirical Evaluation of RDF Graph Partitioning Techniques
An Empirical Evaluation of RDF Graph Partitioning TechniquesAn Empirical Evaluation of RDF Graph Partitioning Techniques
An Empirical Evaluation of RDF Graph Partitioning Techniques
 
Scalable up genomic analysis with ADAM
Scalable up genomic analysis with ADAMScalable up genomic analysis with ADAM
Scalable up genomic analysis with ADAM
 
BioBankCloud: Machine Learning on Genomics + GA4GH @ Med at Scale
BioBankCloud: Machine Learning on Genomics + GA4GH  @ Med at ScaleBioBankCloud: Machine Learning on Genomics + GA4GH  @ Med at Scale
BioBankCloud: Machine Learning on Genomics + GA4GH @ Med at Scale
 
Latent Semantic Analysis of Wikipedia with Spark
Latent Semantic Analysis of Wikipedia with SparkLatent Semantic Analysis of Wikipedia with Spark
Latent Semantic Analysis of Wikipedia with Spark
 
Lightning fast genomics with Spark, Adam and Scala
Lightning fast genomics with Spark, Adam and ScalaLightning fast genomics with Spark, Adam and Scala
Lightning fast genomics with Spark, Adam and Scala
 
Triple Stores
Triple StoresTriple Stores
Triple Stores
 
OSDC 2016 - Chronix - A fast and efficient time series storage based on Apach...
OSDC 2016 - Chronix - A fast and efficient time series storage based on Apach...OSDC 2016 - Chronix - A fast and efficient time series storage based on Apach...
OSDC 2016 - Chronix - A fast and efficient time series storage based on Apach...
 
Python for Financial Data Analysis with pandas
Python for Financial Data Analysis with pandasPython for Financial Data Analysis with pandas
Python for Financial Data Analysis with pandas
 

Similaire à Enabling ontology based streaming data access final

Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
Apache Big_Data Europe event: "Integrators at work! Real-life applications of...Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
BigData_Europe
 
Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
Apache Big_Data Europe event: "Integrators at work! Real-life applications of...Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
Hajira Jabeen
 
DIR workshop ontology stream data access
DIR workshop ontology stream data accessDIR workshop ontology stream data access
DIR workshop ontology stream data access
Jean-Paul Calbimonte
 
Stream Reasoning - where we got so far 2011.1.18 Oxford Key Note
Stream Reasoning - where we got so far 2011.1.18 Oxford Key NoteStream Reasoning - where we got so far 2011.1.18 Oxford Key Note
Stream Reasoning - where we got so far 2011.1.18 Oxford Key Note
Emanuele Della Valle
 
Maria Patterson - Building a community fountain around your data stream
Maria Patterson - Building a community fountain around your data streamMaria Patterson - Building a community fountain around your data stream
Maria Patterson - Building a community fountain around your data stream
PyData
 

Similaire à Enabling ontology based streaming data access final (20)

Enabling semantic integration
Enabling semantic integration Enabling semantic integration
Enabling semantic integration
 
What we do to improve scalability in our RDF processing system
What we do to improve scalability in our RDF processing systemWhat we do to improve scalability in our RDF processing system
What we do to improve scalability in our RDF processing system
 
Towards efficient processing of RDF data streams
Towards efficient processing of RDF data streamsTowards efficient processing of RDF data streams
Towards efficient processing of RDF data streams
 
Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
Apache Big_Data Europe event: "Integrators at work! Real-life applications of...Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
 
Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
Apache Big_Data Europe event: "Integrators at work! Real-life applications of...Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
Apache Big_Data Europe event: "Integrators at work! Real-life applications of...
 
Phd
PhdPhd
Phd
 
Large scale, interactive ad-hoc queries over different datastores with Apache...
Large scale, interactive ad-hoc queries over different datastores with Apache...Large scale, interactive ad-hoc queries over different datastores with Apache...
Large scale, interactive ad-hoc queries over different datastores with Apache...
 
DIR workshop ontology stream data access
DIR workshop ontology stream data accessDIR workshop ontology stream data access
DIR workshop ontology stream data access
 
Stream Reasoning: State of the Art and Beyond
Stream Reasoning: State of the Art and BeyondStream Reasoning: State of the Art and Beyond
Stream Reasoning: State of the Art and Beyond
 
Stanford'12 Intro to Ontology Based Data Access for RDBMS through query rewri...
Stanford'12 Intro to Ontology Based Data Access for RDBMS through query rewri...Stanford'12 Intro to Ontology Based Data Access for RDBMS through query rewri...
Stanford'12 Intro to Ontology Based Data Access for RDBMS through query rewri...
 
What is a distributed data science pipeline. how with apache spark and friends.
What is a distributed data science pipeline. how with apache spark and friends.What is a distributed data science pipeline. how with apache spark and friends.
What is a distributed data science pipeline. how with apache spark and friends.
 
Stream Reasoning - where we got so far 2011.1.18 Oxford Key Note
Stream Reasoning - where we got so far 2011.1.18 Oxford Key NoteStream Reasoning - where we got so far 2011.1.18 Oxford Key Note
Stream Reasoning - where we got so far 2011.1.18 Oxford Key Note
 
Scaling up with Cisco Big Data: Data + Science = Data Science
Scaling up with Cisco Big Data: Data + Science = Data ScienceScaling up with Cisco Big Data: Data + Science = Data Science
Scaling up with Cisco Big Data: Data + Science = Data Science
 
Towards a rebirth of data science (by Data Fellas)
Towards a rebirth of data science (by Data Fellas)Towards a rebirth of data science (by Data Fellas)
Towards a rebirth of data science (by Data Fellas)
 
All Day DevOps - FLiP Stack for Cloud Data Lakes
All Day DevOps - FLiP Stack for Cloud Data LakesAll Day DevOps - FLiP Stack for Cloud Data Lakes
All Day DevOps - FLiP Stack for Cloud Data Lakes
 
Sqrrl October Webinar: Data Modeling and Indexing
Sqrrl October Webinar: Data Modeling and IndexingSqrrl October Webinar: Data Modeling and Indexing
Sqrrl October Webinar: Data Modeling and Indexing
 
Maria Patterson - Building a community fountain around your data stream
Maria Patterson - Building a community fountain around your data streamMaria Patterson - Building a community fountain around your data stream
Maria Patterson - Building a community fountain around your data stream
 
dfl
dfldfl
dfl
 
Afterwork big data et data viz - du lac à votre écran
Afterwork big data et data viz - du lac à votre écranAfterwork big data et data viz - du lac à votre écran
Afterwork big data et data viz - du lac à votre écran
 
An analysis of the quality issues of the properties available in the Spanish ...
An analysis of the quality issues of the properties available in the Spanish ...An analysis of the quality issues of the properties available in the Spanish ...
An analysis of the quality issues of the properties available in the Spanish ...
 

Plus de Jean-Paul Calbimonte

Plus de Jean-Paul Calbimonte (20)

Towards Collaborative Creativity in Persuasive Multi-agent Systems
Towards Collaborative Creativity in Persuasive Multi-agent SystemsTowards Collaborative Creativity in Persuasive Multi-agent Systems
Towards Collaborative Creativity in Persuasive Multi-agent Systems
 
A Platform for Difficulty Assessment and Recommendation of Hiking Trails
A Platform for Difficulty Assessment andRecommendation of Hiking TrailsA Platform for Difficulty Assessment andRecommendation of Hiking Trails
A Platform for Difficulty Assessment and Recommendation of Hiking Trails
 
Stream reasoning agents
Stream reasoning agentsStream reasoning agents
Stream reasoning agents
 
Decentralized Management of Patient Profiles and Trajectories through Semanti...
Decentralized Management of Patient Profiles and Trajectories through Semanti...Decentralized Management of Patient Profiles and Trajectories through Semanti...
Decentralized Management of Patient Profiles and Trajectories through Semanti...
 
Personal Data Privacy Semantics in Multi-Agent Systems Interactions
Personal Data Privacy Semantics in Multi-Agent Systems InteractionsPersonal Data Privacy Semantics in Multi-Agent Systems Interactions
Personal Data Privacy Semantics in Multi-Agent Systems Interactions
 
RDF data validation 2017 SHACL
RDF data validation 2017 SHACLRDF data validation 2017 SHACL
RDF data validation 2017 SHACL
 
SanTour: Personalized Recommendation of Hiking Trails to Health Pro files
SanTour: Personalized Recommendation of Hiking Trails to Health ProfilesSanTour: Personalized Recommendation of Hiking Trails to Health Profiles
SanTour: Personalized Recommendation of Hiking Trails to Health Pro files
 
Multi-agent interactions on the Web through Linked Data Notifications
Multi-agent interactions on the Web through Linked Data NotificationsMulti-agent interactions on the Web through Linked Data Notifications
Multi-agent interactions on the Web through Linked Data Notifications
 
The MedRed Ontology for Representing Clinical Data Acquisition Metadata
The MedRed Ontology for Representing Clinical Data Acquisition MetadataThe MedRed Ontology for Representing Clinical Data Acquisition Metadata
The MedRed Ontology for Representing Clinical Data Acquisition Metadata
 
Linked Data Notifications for RDF Streams
Linked Data Notifications for RDF StreamsLinked Data Notifications for RDF Streams
Linked Data Notifications for RDF Streams
 
Fundamentos de Scala (Scala Basics) (español) Catecbol
Fundamentos de Scala (Scala Basics) (español) CatecbolFundamentos de Scala (Scala Basics) (español) Catecbol
Fundamentos de Scala (Scala Basics) (español) Catecbol
 
Query Rewriting in RDF Stream Processing
Query Rewriting in RDF Stream ProcessingQuery Rewriting in RDF Stream Processing
Query Rewriting in RDF Stream Processing
 
Toward Semantic Sensor Data Archives on the Web
Toward Semantic Sensor Data Archives on the WebToward Semantic Sensor Data Archives on the Web
Toward Semantic Sensor Data Archives on the Web
 
Detection of hypoglycemic events through wearable sensors
Detection of hypoglycemic events through wearable sensorsDetection of hypoglycemic events through wearable sensors
Detection of hypoglycemic events through wearable sensors
 
The Schema Editor of OpenIoT for Semantic Sensor Networks
The Schema Editor of OpenIoT for Semantic Sensor NetworksThe Schema Editor of OpenIoT for Semantic Sensor Networks
The Schema Editor of OpenIoT for Semantic Sensor Networks
 
Scala Programming for Semantic Web Developers ESWC Semdev2015
Scala Programming for Semantic Web Developers ESWC Semdev2015Scala Programming for Semantic Web Developers ESWC Semdev2015
Scala Programming for Semantic Web Developers ESWC Semdev2015
 
Streams of RDF Events Derive2015
Streams of RDF Events Derive2015Streams of RDF Events Derive2015
Streams of RDF Events Derive2015
 
XGSN: An Open-source Semantic Sensing Middleware for the Web of Things
XGSN: An Open-source Semantic Sensing Middleware for the Web of ThingsXGSN: An Open-source Semantic Sensing Middleware for the Web of Things
XGSN: An Open-source Semantic Sensing Middleware for the Web of Things
 
X-GSN in OpenIoT SummerSchool
X-GSN in OpenIoT SummerSchoolX-GSN in OpenIoT SummerSchool
X-GSN in OpenIoT SummerSchool
 
GSN Global Sensor Networks for Environmental Data Management
GSN Global Sensor Networks for Environmental Data ManagementGSN Global Sensor Networks for Environmental Data Management
GSN Global Sensor Networks for Environmental Data Management
 

Dernier

Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
ssuserdda66b
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 

Dernier (20)

Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 

Enabling ontology based streaming data access final

  • 1. Date: 9/11/2010 Enabling Ontology-based Access to Streaming Data Sources Jean-Paul Calbimonte1, Oscar Corcho1, Alasdair J G Gray2 1Ontology Engineering Group. Departamento de Inteligencia Artificial. Facultad de Informática, Universidad Politécnica de Madrid. Campus de Montegancedo s/n. 28660 Boadilla del Monte. Madrid. Spain jp.calbimonte@upm.es;ocorcho@fi.upm.es 2School of Computer Science, The University of Manchester, Oxford Road, Manchester M13 9PL, United Kingdom a.gray@cs.man.ac.uk 9th International Semantic Web Conference ISWC 2010 Shanghai, China
  • 2. Outline • Introduction & Motivation • Background • Approach • Mapping Streams to Ontologies • SPARQL Stream • Query Translation • Example • Future work • Conclusions 2Enabling Ontology-based Access to Streaming Data Sources
  • 3. Introduction & Scope 3 • Streaming Data (t9, a1, a2, ... , an) (t8, a1, a2, ... , an) (t7, a1, a2, ... , an) ... ... (t1, a1, a2, ... , an) ... ... Streaming Data • Continuously appended data • Potentially infinite • Time-stamped tuples • Continuous queries • Changes of values over time • Latest used in queries • Ubiquitous data capture • Data processing • Cheap • Noisy, Unreliable • Low computational, power resources, storage • Sensor technologies Enabling Ontology-based Access to Streaming Data Sources • Applications in security surveillance, healthcare provision, environmental monitoring, you name it.
  • 4. Motivation 4Enabling Ontology-based Access to Streaming Data Sources Emergency planner Flood risk alert: South East England ... ... ... Real-time data Meteorological forecasts Flood defences data Other sources • Detect conditions likely to cause a flood • Present data model in terms of the user domain: e.g. Flood risk assessment Example: • “provide me with the wind speed observations average over the last minute in the Solent region, if it is higher than the average of the last 2 to 3 hours” Wave, Wind, Tide
  • 5. Motivation 5Enabling Ontology-based Access to Streaming Data Sources • Ontologies can be used as such a common model • Need to provide solution for: • Establish mappings between ontological models and streaming data source schemas • Access streaming data sources through queries over ontology models
  • 6. Background – Ontology-based Data Access 6Enabling Ontology-based Access to Streaming Data Sources Ontology-based Data Access R2O + ODEMapster D2RQ SquirrelRDF RDBToOnto Relational.OWL SPASQL Virtuoso MASTRO Query/Data Transformation Ontological Models Relational Schemas Mapping Document Generate Semantic Web content from existing relational data sources e.g. SPARQL e.g. SQL
  • 7. Background – Querying Relational Data Streams 7Enabling Ontology-based Access to Streaming Data Sources Streaming Data STREAM Aurora/Borealis Cougar TinyDB SNEE e1 e2e1 e2 e3 e2e1 e3 e1 e4 t t+1 t+2 t+3 t+4 t+5 WINDOW [tnow TO tnow-2] SLIDE 1 Transform infinite sequence of tuples to bounded bag Window-to-Stream operators: convert stream of windows to stream of tuples ... ... CQL SNEEql TinyQL Query engines Query languages Event Streams Acquisitional Streams
  • 8. Ontology-based Streaming Data Access 8Enabling Ontology-based Access to Streaming Data Sources Query translation Query Evaluator Client Stream-to-Ontology mappings SPARQLSream (Og) [tuples] Stream Engine (S3) Ontology-based Streaming Data Access Service Relational DB (S2) Sensor Network (S1) RDF Store (Sm) SPARQLSream algebra(S1 S2 Sm) Data translation q [triples] SNEEql
  • 9. Ontology-based Streaming Data Access 9Enabling Ontology-based Access to Streaming Data Sources • Mappings from relational streams to ontological concepts • Extend stored data schema mappings • Study translation semantics • Provide with a stream query language at ontological level • Use notion of RDF stream • Extend SPARQL • Window operator, window-to-stream operators
  • 10. SPARQLStream 10Enabling Ontology-based Access to Streaming Data Sources • RDF-Stream ... ... ( <si-1,pi-1, oi-1>, ti-1 ), ( <si, pi, oi>, ti ), ( <si+1,pi+1, oi+1>, ti+1 ), ... ... Example: • “provide me with the wind speed observations over the last minute in the Solent Region ” cd:Observation xsd:double cd:observationResult ... ... ( <ssg4e:Obs1,rdf:type, cd:Observation>, ti ), ( <ssg4e:Obs1,cd:observationResult,”34.5”>, ti ), ( <ssg4e:Obs2,rdf:type, cd:Observation>, ti+1 ), ( <ssg4e:Obs2,cd:observationResult,”20.3”>, ti+1 ), ... ... STREAM <http://www.semsorgrid4env.eu/ccometeo.srdf>
  • 11. SPARQLStream 11Enabling Ontology-based Access to Streaming Data Sources Example: • “provide me with the wind speed observations over the last minute in the Solent Region ” cd:Observation xsd:double cd:observationResult PREFIX cd: <http://www.semsorgrid4env.eu/ontologies/CoastalDefences.owl#> PREFIX sb: <http://www.w3.org/2009/SSN- XG/Ontologies/SensorBasis.owl#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> SELECT ?windspeed ?windts FROM STREAM <http://www.semsorgrid4env.eu/ccometeo.srdf> [ NOW – 1 MINUTE TO NOW – 0 MINUTES ] WHERE { ?WindObs a cd:Observation; cd:observationResult ?windspeed; cd:observationResultTime ?windts; cd:observedProperty ?windProperty; cd:featureOfInterest ?windFeature. ?windFeature a cd:Feature; cd:locatedInRegion cd:SolentCCO. ?windProperty a cd:WindSpeed. } cd:Feature cd:featureOfInterest cd:Property cd:observedProperty cd:locatedInRegion cd:Region
  • 12. Ontology-based Streaming Data Access 12Enabling Ontology-based Access to Streaming Data Sources Query translation Query Evaluator Client Stream-to-Ontology mappings SPARQLSream (Og) [tuples] Stream Engine (S3) Ontology-based Streaming Data Access Service Relational DB (S2) Sensor Network (S1) RDF Store (Sm) SPARQLSream algebra(S1 S2 Sm) Data translation q [triples] SNEEql
  • 13. S2O Mappings 13Enabling Ontology-based Access to Streaming Data Sources • R2O Mappings • Schema descriptions (probably mostly unused) <has-table name="raingauge"> <keycol-desc name="id"/> <keycol-desc name="ts"/> <nonkeycol-desc name="level"/> </has-table> <has-stream name="windsamples" streamType="push"> <keycol-desc name="id"/> <keycol-desc name="ts"/> <timestamp-desc name="ts" /> <nonkeycol-desc name="speed"/> <nonkeycol-desc name="temperature"/> <nonkeycol-desc name="direction"/> </has-stream>
  • 14. S2O Mappings 14Enabling Ontology-based Access to Streaming Data Sources <conceptmap-def id="Observation_wind" name="http://www.semsorgrid4env.eu/ontologies/CoastalDefences.owl#Observation" virtualStream="http://www.semsorgrid4env/ccometeo.srdf"> <uri-as> <operation oper-id="concat"> <arg-restriction on-param="string1"> <has-value>http://www.semsorgrid4env.eu/data#ObservationWind</has-value> </arg-restriction> <arg-restriction on-param="string2"> <has-column>meteostream.DateTime</has-column> </arg-restriction> </operation> </uri-as> <attributemap-def name="http://www.semsorgrid4env.eu/ontologies/CoastalDefences.owl#observationResult" dataType="xsd:double"> <selector> <aftertransform> <operation oper-id="constant"> <arg-restriction on-param="const-val"> <has-column>meteostream.Hs</has-column> </arg-restriction> </operation> </aftertransform> </selector> </attributemap-def> cd:Observation xsd:double cd:observationResult meteostream Datetime: long Hs : float Lon: float Lat: float
  • 15. S2O Mappings 15Enabling Ontology-based Access to Streaming Data Sources cd:Observation xsd:double cd:observationResult envdata_hornsea Datetime: long Hs : float Lon: float Lat: float envdata_westbay Datetime: long Hs : float Lon: float Lat: float envdata_milford Datetime: long Hs : float Lon: float Lat: float envdata_rhylflats Datetime: long Hs : float Lon: float Lat: float U U U <union name="meteostream"> <map value="http://www.semsorgrid4env.eu/ontologies/ CoastalDefences.owl#SolentCCO"> <extent name="envdata_hornsea"></extent> <extent name="envdata_rhylflats"></extent> <extent name="envdata_milford"></extent> <extent name="envdata_westbay"></extent> </map> </union> • Union of extents-streams
  • 16. Ontology-based Streaming Data Access 16Enabling Ontology-based Access to Streaming Data Sources Query translation Query Evaluator Client Stream-to-Ontology mappings SPARQLSream (Og) [tuples] Stream Engine (S3) Ontology-based Streaming Data Access Service Relational DB (S2) Sensor Network (S1) RDF Store (Sm) SPARQLSream algebra Data translation q [triples] SNEEql
  • 17. Query Translation 17Enabling Ontology-based Access to Streaming Data Sources • Queries: SELECT ?y WHERE { ?x a cd:Observation; cd:observationResult ?y. } SELECT ?y FROM STREAM < STREAM <http://www.semsorgrid4env.eu/ccometeo.srdf> [ NOW – 1 MINUTE TO NOW – 0 MINUTES ] > WHERE { ?x a cd:Observation; cd:observationResult ?y. }
  • 18. Query Translation 18Enabling Ontology-based Access to Streaming Data Sources • Mappings: query algebra expression over sources cd:Observation xsd:double cd:observationResult envdata_milford Datetime: long Hs : float Lon: float Lat: float envdata_milford Datetime Hs
  • 19. Query Translation 19Enabling Ontology-based Access to Streaming Data Sources envdata _rhylflats DateTime Hs cd:Observation xsd:double cd:observationResult envdata_hornsea Datetime: long Hs : float Lon: float Lat: float envdata_westbay Datetime: long Hs : float Lon: float Lat: float envdata_milford Datetime: long Hs : float Lon: float Lat: float envdata_rhylflats Datetime: long Hs : float Lon: float Lat: float U U U envdata _milford DateTime Hs envdata _hornsea DateTime Hs envdata _westbay DateTime Hs DateTime Hs
  • 20. Ontology-based Streaming Data Access 20Enabling Ontology-based Access to Streaming Data Sources Query translation Query Evaluator Client Stream-to-Ontology mappings SPARQLSream (Og) [tuples] Stream Engine (S3) Ontology-based Streaming Data Access Service Relational DB (S2) Sensor Network (S1) RDF Store (Sm) SPARQLSream algebra Data translation q [triples] SNEEql
  • 21. v v v v Query Execution 21 PREFIX cd: <http://www.semsorgrid4env.eu/ontologies/CoastalDefences.owl#> PREFIX sb: <http://www.w3.org/2009/SSN-XG/Ontologies/SensorBasis.owl#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> SELECT ?waveheight ?wavets ?lat ?lon FROM STREAM <http://www.semsorgrid4env/ccometeo.srdf> WHERE { ?WaveObs a cd:Observation; cd:observationResult ?waveheight; cd:observationResultTime ?wavets; cd:observationResultLatitude ?lat; cd:observationResultLongitude ?lon; cd:observedProperty ?waveProperty; cd:featureOfInterest ?waveFeature. ?waveFeature a cd:Feature; cd:locatedInRegion cd:SouthEastEnglandCCO. ?waveProperty a cd:WaveHeight. } (SELECT Lon,timestamp,Hs,Lat FROM envdata_rhylflats) UNION (SELECT Lon,timestamp,Hs,Lat FROM envdata_hornsea) UNION (SELECT Lon,timestamp,Hs,Lat FROM envdata_milford) UNION (SELECT Lon,timestamp,Hs,Lat FROM envdata_chesil) UNION (SELECT Lon,timestamp,Hs,Lat FROM envdata_perranporth) UNION (SELECT Lon,timestamp,Hs,Lat FROM envdata_westbay) UNION (SELECT Lon,timestamp,Hs,Lat FROM envdata_pevenseybay) envdata_rhylflats Timestamp: long Hs : float Lon: float Lat: float envdata_hornsea Observation WaveHeight Property observed Property hasObservation Result xsd:float locatedIn Region Ontologies Streams S2O Mapping envdata_milford envdata_chesil envdata_westbay Region Feature SPARQLStream SNEEql Enabling Ontology-based Access to Streaming Data Sources
  • 22. Ontology-based Streaming Data Access 22Enabling Ontology-based Access to Streaming Data Sources Query translation Query Evaluator Client Stream-to-Ontology mappings SPARQLSream (Og) [tuples] Stream Engine (S3) Ontology-based Streaming Data Access Service Relational DB (S2) Sensor Network (S1) RDF Store (Sm) SPARQLSream algebra Data translation q [triples] SNEEql
  • 23. Data Translation • Data translation: Tagged tuples  SPARQL bound variables <ns9:sparql> <ns9:head> <ns9:variable name="waveheight"/> <ns9:variable name="wavets"/> </ns9:head> <ns9:results> <ns9:result> <ns9:binding name="waveheight"> <ns9:literal datatype="http://www.w3.org/2001/XMLSchema#double">4.850</ns9:literal> </ns9:binding> <ns9:binding name="wavets"> <ns9:literal datatype="http://www.w3.org/2001/XMLSchema#long">1272588663</ns9:literal> </ns9:binding> </ns9:result> <ns9:result> <ns9:binding name="waveheight"> <ns9:literal datatype="http://www.w3.org/2001/XMLSchema#double">2.1230</ns9:literal> </ns9:binding> <ns9:binding name="wavets"> <ns9:literal datatype="http://www.w3.org/2001/XMLSchema#long">1272587400</ns9:literal> </ns9:binding> </ns9:result> </ns9:results> </ns9:sparql> waveheight wavets 4.850 1272588663 2.1230 1272587400
  • 24. Implementation 24Enabling Ontology-based Access to Streaming Data Sources • Design, implement and deploy a Semantic Integration Service • Extend existing ontology- based data integration models to take into account sensor networks streaming data, semantic heterogeneity and quality of service
  • 25. Implementation 25Enabling Ontology-based Access to Streaming Data Sources Integration Query Service IntegrationInterface QueryInterface PullInterface Translator ClientSNEE -WS S2O mappings repository SNEEql IntegrateAs (DataResourceAddressList, S2O document) DataResourceAddress SPARQLQueryFactory (DataResourceName, SPARQLSTR ) DataResourceAddressaddQuery GetStreamNewestItem(DataResourceName ) DataSetgetResultSet repeat CCO- WS
  • 26. Implementation • Flood Warning Application 26Enabling Ontology-based Access to Streaming Data Sources - Wave Height updated every 10 min - Live data from sensor in buoys - Over 30 deployments
  • 27. Conclusions Ontology-base data access • Define stream extensions for R2O • Define SPARQLStream language syntax and semantics • Define S2O mappings-based translation semantics Implementation • Enable engine support for « S2O » documents, SPARQLStream queries • Enabled engine support for SNEEql translation and connection • Limited to non-distributed scenario initially 27Enabling Ontology-based Access to Streaming Data Sources
  • 28. 28 Future Works • Ontology-based data access • SPARQL construct expressions, aggregates, projected operators • Implement adapters for other streaming sources • Add query rewriting algorithms • Ontology-based streaming data integration • Horizontal & vertical integration • Integrate streaming + stored data • RDF data sources integration • Streaming query optimization • Analyze cost models • Streaming sources statistics and metadata • Quantitative evaluation 28Enabling Ontology-based Access to Streaming Data Sources
  • 29. Thanks! 29 Enabling Ontology-based Access to Streaming Data Sources Jean-Paul Calbimonte jp.calbimonte@upm.es Enabling Ontology-based Access to Streaming Data Sources

Notes de l'éditeur

  1. q(x)\leftarrow Observation(x) \wedge observationResult(x,y)\\ q(\vec{x})\leftarrow \phi(\vec{x},\vec{y})) \mathit{\Psi \leadsto \Phi}
  2. (Observation(x) \wedge \\observationResult(x,y))[t_i,t_f,\delta]\\