Telecon 11.10.2013

From RDF Stream Processing Community Group

Participants

Participants

  • Manfred Hauswirth
  • Darko Anicic
  • Jean-Paul Calbimonte
  • Marco Balduini
  • Daniele Dell'Aglio
  • Esko Nuutila
  • Lorenz Fischer
  • Robin KeskisŠärkkŠä
  • Alessandro Margara
  • Mikko Rinne
  • Sebastian Käbisch
  • Seppo Törmä
  • Daniel Peintner

Agenda

  • RDF Stream Query processing
    • Overview existing apporaches
    • Extensions to SPARQL
  • Systems and implementations
    • C-SPARQL
    • EP-SPARQL
    • SparqlStream
    • CQELS
    • Instans
  • F2F meeting and future concerns

Minutes

Jean-Paul: previous telecon about RDF Stream models, this one about query processing. After introduction, leave the floor for group members to present their approaches.

RDF stream query processing

Jean-Paul: presentation about RDF Stream query processing. Basic notions and overview of existing approaches.

  • Overview presentation by JP [1]

Mikko: why are RDF streams (in the presentation) required to be timestamped

Jean-Paul: a metamodel adopted by several approaches. Not the only way to query RDF Streams.


Alessandro: comments on windows in query processing. Window can be decoupled. First defines the information to be processed with the window. May not be the best way in all cases.

Alessandro: explains example where windowed model might not be suitable. All triples represent previous knowledge, receive constant updates. Using windows we bound the scope, and cant express all the last available information. Windows may exclude relevant data.

Jean-Paul: windows not the only operator for querying RDF streams.

Presentations of existing approaches

Jean-Paul: There is a wiki page for putting pointers to your implementations:

C-SPARQL

Jean-Paul: now Marco about C-SPARQL

Jean-Paul: Marco presents C-SPARQL language and engine.

  • C-SPARQL [3]
  • C-SPARQL engine [4]

Marco: sparql normal operators explained.

Marco: c-sparql extends sparql, add stream clause, timestamp function, register query, stream.

Marco: csparql query divided, evaluated by rdf stream procesor, streaming part can be consumed by streaming engine e.g. esper.

Darko: what is the meaning of the timestamp function?

Marco: explains timestamp function, get the system time of triples in the query body (refine explanation transcription...)

Marco: refers to processing time

Manfred: what does the time means? difficult scenario. it has implications in the meaning.

Manfred: what is the timestamp? reception? be very careful, temporal relationship may be destroyed. users must be aware of what this means.

Manfred: No simple time model can work in all scenarios.

Jean-Paul: Problem when static data is big?

Marco: C-Sparql problems when static data is big, the implementation is not too mature in that respect.

ETALIS

Jean-Paul: Darko to present Etalis.

darko: etalis and ep-sparql. Different from mainstream RDf stream engines. Supposed to be a rule based engine, not sparql engine. Not supposed to be a stream processing engine, but event processing engine.

Darko: Etalis-> rule based language. Ep-sparql-> extension. Implemented only partially

Darko: events correlated in time. Etails correlates event with predefined rules. Query semantic relations among events. In etalis there is distiction between temporal knowledge and static knowledge. Engine rules captured by prolog rules / ontology. Etalis is a stream reasoning engine to some extent, as it includes reasoning with these rules.

Darko: semantics presented, (see slides). Triples have timestamps expressed in intervals. Explained seq, equals and optionalseq operators.

Darko: explains dynamic updates of rules for the Etalis engine. Includes the notion of retractions, events can be retracted.

Jean-Paul: reasoning expressiveness?

Darko: constrained to rdfs ontologies for the reasoning.

CEQLS

Manfred: brief overview of Cqels and linked stream processing.

Manfred: focused on efficiency in Cqels. Cqels-ql: tried to be minimally invasive. easily integrated with sparql 1.1. Adds stream pattern, mainly the only extension.

Manfred: explains windows membership: triple based window, membership in window can be time based, but can be extended to other types.

Manfred: CQELS engine, follows white box approach, follows similar architecture to database. Tricky: dynamic execution. switch between plans dynamically.

Manfred: DB research based optimization, use highly compressed formats. Compress into integers if possible.

Manfred: parallelized algorithms, to go cloud. CQELS and Storm prototype.

Manfred: A bit of stream reasoning: Stream ASP programs. oClingo combined with Cqels.

Manfred: Nice to have: exchange stream processors: major goal for this CG.

Instans

Mikko: explains instans Mikko Instans slides [5]

Mikko: based on rete algorithm. Continuous evaluation interconnected Sparql query.

Mikko: uses sparql1.1 update to insert data into the system. Insert,delete can be included in the query.

Mikko: Instans continuous incremental matching. no RDF nor SPARQL extensions.

SPARQLstream

Jean-Paul: no time left for SPARLstream, you can see it in the wiki anyway: SPARQLStream [6]

Next steps and F2F meeting

Jean-Paul: Next steps, focus on Use cases and requirements. To discuss in F2F meeting Sydney

Darko: How to add, work, proceed with the use cases in the wiki? Follow the template? add more information? level of granularity=

Jean-Paul: Feel free to contribute, follow the template or add more information if you see fit. Those are more 'user stories'. We need to agree on a set of Use cases and requirements if we want to agree on a common metamodel and potential standardized extensions to SPARQL.

Darko: Useful to explain in more detail how to contribute to the use cases and what are the following steps. Make it circulate in the mailing list so everybody knows what is going to happen

Jean-Paul: ACTION: send guidline and proposal to work on this direction.