Comunica: A Modular SPARQL Query Engine for the Web

Query evaluation over Linked Data sources has become a complex story, given the multitude of algorithms and techniques for single- and multi-source querying, as well as the heterogeneity of Web interfaces through which data is published online. Today’s query processors are insufficiently adaptable to test multiple query engine aspects in combination, such as evaluating the performance of a certain join algorithm over a federation of heterogeneous interfaces. The Semantic Web research community is in need of a flexible query engine that allows plugging in new components such as different algorithms, new or experimental SPARQL features, and support for new Web interfaces. We designed and developed a Web-friendly and modular meta query engine called Open image in new window that meets these specifications. In this article, we introduce this query engine and explain the architectural choices behind its design. We show how its modular nature makes it an ideal research platform for investigating new kinds of Linked Data interfaces and querying algorithms. Comunica facilitates the development, testing, and evaluation of new query processing capabilities, both in isolation and in combination with others.

[1]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[2]  Rik Van de Walle,et al.  Query Execution Optimization for Clients of Triple Pattern Fragments , 2015, ESWC.

[3]  Rik Van de Walle,et al.  Substring Filtering for Low-Cost Linked Data Interfaces , 2015, International Semantic Web Conference.

[4]  Carl Hewitt,et al.  A Universal Modular ACTOR Formalism for Artificial Intelligence , 1973, IJCAI.

[5]  Pierre-Antoine Champin,et al.  JSON-LD 1.1 – A JSON-based Serialization for Linked Data , 2019 .

[6]  Orri Erling,et al.  Virtuoso: RDF Support in a Native RDBMS , 2009, Semantic Web Information Management.

[7]  Ruben Verborgh,et al.  OSTRICH: Versioned Random-Access Triple Store , 2018, WWW.

[8]  Michael Schmidt,et al.  Foundations of SPARQL query optimization , 2008, ICDT '10.

[9]  E. Prud hommeaux,et al.  SPARQL query language for RDF , 2011 .

[10]  Ruben Verborgh,et al.  Describing Configurations of Software Experiments as Linked Data , 2017, SemSci@ISWC.

[11]  Ruben Verborgh,et al.  Triple Pattern Fragments: A low-cost knowledge graph interface for the Web , 2016, J. Web Semant..

[12]  Hala Skaf-Molli,et al.  CyCLaDEs: A Decentralized Cache for Triple Pattern Fragments , 2016, ESWC.

[13]  Ruben Verborgh,et al.  Versioned Triple Pattern Fragments: A Low-cost Linked Data Interface Feature for Web Archives , 2017, MEPDaW/LDQ@ESWC.

[14]  Orri Erling,et al.  RDF Support in the Virtuoso DBMS , 2007, CSSW.

[15]  Olaf Hartig,et al.  Bindings-Restricted Triple Pattern Fragments , 2016, OTM Conferences.

[16]  Olaf Hartig,et al.  An Overview on Execution Strategies for Linked Data Queries , 2013, Datenbank-Spektrum.

[17]  M. Tamer Özsu,et al.  Diversified Stress Testing of RDF Data Management Systems , 2014, SEMWEB.

[18]  Rik Van de Walle,et al.  Opportunistic Linked Data Querying Through Approximate Membership Metadata , 2015, International Semantic Web Conference.

[19]  Maribel Acosta,et al.  Networks of Linked Data Eddies: An Adaptive Web Query Processing Engine for RDF Data , 2015, SEMWEB.

[20]  Ruben Verborgh,et al.  Continuous Client-Side Query Evaluation over Dynamic Linked Data , 2016, ESWC.

[21]  Ruben Verborgh,et al.  Declaratively Describing Responses of Hypermedia-Driven Web APIs , 2017, K-CAP.

[22]  Ruben Verborgh,et al.  A Web API Ecosystem through Feature-Based Reuse , 2018, IEEE Internet Computing.

[23]  Dave Reynolds,et al.  SPARQL basic graph pattern optimization using selectivity estimation , 2008, WWW.

[24]  Zongmin Ma,et al.  f-SPARQL: A Flexible Extension of SPARQL , 2010, DEXA.

[25]  Axel Polleres,et al.  Binary RDF representation for publication and exchange (HDT) , 2013, J. Web Semant..

[26]  Christian Gütl,et al.  Hydra: A Vocabulary for Hypermedia-Driven Web APIs , 2013, LDOW.

[27]  Kenneth P. Birman,et al.  Exploiting virtual synchrony in distributed systems , 1987, SOSP '87.