Abstract
The main processing paradigm in data management is bulk processing. As introduced by Codd in the early 70's, under this paradigm relations are processed in bulk, one operator at a time. When applied to relations, this paradigm leads to relational algebra, and its variants, relational calculus, and SQL. Over the years, data management was faced with the challenge of extending bulk processing operators to new kinds of data, and/or new kinds of queries: nested relations, semistructured data, recursive queries. Each such extension requires significant systems development, which should be accompanied, in fact preceded, by a careful study of the expressive power of the new language. Is it as expressive, more expressive, or less expressive than relational algebra? The answer to this question has profound implications on the ability of data processing engines to optimize, compute, distribute, reuse queries in that language. For example, extending relational algebra with nested relations does not increase its expressive power, while extending it with fixpoint does, explaining why modern query engines have an easier time supporting JSON than recursion.
Index Terms
Technical Perspective for: MATLANG: Matrix Operations and Their Expressive Power
Recommendations
Technical Perspective: Query Answers - Fewer is Faster
We often write queries using LIMIT k, indicating that only k answers are to be returned. This feature is present in most query languages, for different data models: SQL, SPARQL, Cypher etc. For example, in a repository of about 250M SPARQL queries, ...
Technical Perspective: Efficient Query Processing for Dynamically Changing Datasets
The paper Efficient Query Processing for Dynamically Changing Datasets, by Muhammad Idris, Mart´n Ugarte, Stijn Vansummeren, Hannes Voigt, and Wolfgang Lehner studies two central aspects of answering queries: (1) enumerating the answers to a query and (...
Technical Perspective for: Query Games in Databases
When a data analyst runs some query to analyze her data, she often wants to ask some follow-up questions, about the result of the query. Why-questions take many shapes, and occur in many scenarios. Why is a particular tuple in the answer? Why is it not ...
Comments