The CQL continuous query language: semantic foundations and query execution

The CQL continuous query language: semantic foundations and query execution

22 July 2005 | Arvind Arasu · Shivnath Babu · Jennifer Widom
This paper presents the CQL continuous query language and its execution engine for general-purpose continuous queries over streams and stored relations. CQL is an expressive SQL-based declarative language for registering continuous queries against streams and stored relations. The paper begins by presenting an abstract semantics that relies only on "black-box" mappings among streams and relations. From these mappings, a precise and general interpretation for continuous queries is defined. CQL is an instantiation of this abstract semantics using SQL to map from relations to relations, window specifications derived from SQL-99 to map from streams to relations, and three new operators to map from relations to streams. Most of the CQL language is operational in the STREAM system. The paper presents the structure of CQL's query execution plans and details of the most important components: operators, interoperator queues, synopses, and sharing of components among multiple operators and queries. Examples are drawn from the Linear Road benchmark. The paper also curates a public repository of data stream applications expressed in CQL. The relative ease of capturing these applications in CQL indicates that the language contains an appropriate set of constructs for data stream processing. The paper defines an abstract semantics for continuous queries based on three black-box classes of operators: stream-to-relation, relation-to-relation, and relation-to-stream. The paper also defines the concrete language CQL, which instantiates the black boxes in the abstract semantics. It illustrates CQL using a hypothetical road traffic management application and compares the expressiveness of CQL against related query languages. The paper describes the query execution plans and strategies used in the STREAM system for CQL queries, focusing on operators, interoperator queues, synopses, and sharing of components among multiple operators and queries. The paper also discusses related work on continuous queries and their semantics.This paper presents the CQL continuous query language and its execution engine for general-purpose continuous queries over streams and stored relations. CQL is an expressive SQL-based declarative language for registering continuous queries against streams and stored relations. The paper begins by presenting an abstract semantics that relies only on "black-box" mappings among streams and relations. From these mappings, a precise and general interpretation for continuous queries is defined. CQL is an instantiation of this abstract semantics using SQL to map from relations to relations, window specifications derived from SQL-99 to map from streams to relations, and three new operators to map from relations to streams. Most of the CQL language is operational in the STREAM system. The paper presents the structure of CQL's query execution plans and details of the most important components: operators, interoperator queues, synopses, and sharing of components among multiple operators and queries. Examples are drawn from the Linear Road benchmark. The paper also curates a public repository of data stream applications expressed in CQL. The relative ease of capturing these applications in CQL indicates that the language contains an appropriate set of constructs for data stream processing. The paper defines an abstract semantics for continuous queries based on three black-box classes of operators: stream-to-relation, relation-to-relation, and relation-to-stream. The paper also defines the concrete language CQL, which instantiates the black boxes in the abstract semantics. It illustrates CQL using a hypothetical road traffic management application and compares the expressiveness of CQL against related query languages. The paper describes the query execution plans and strategies used in the STREAM system for CQL queries, focusing on operators, interoperator queues, synopses, and sharing of components among multiple operators and queries. The paper also discusses related work on continuous queries and their semantics.
Reach us at info@futurestudyspace.com
Understanding The CQL continuous query language%3A semantic foundations and query execution