Supporting views in data stream management systems

Supporting views in data stream management systems
复制标题

DOI:
10.1145/1670243.1670244
复制
发表时间:
2010-02
期刊:
ACM Trans. Database Syst.
影响因子:
--
通讯作者:
Thanaa M. Ghanem;A. Elmagarmid;P. Larson;W. Aref
Thanaa M. Ghanem;A. Elmagarmid;P. Larson;W. Aref
中科院分区:
其他
文献类型:
--
作者:
Thanaa M. Ghanem;A. Elmagarmid;P. Larson;W. Aref

文献摘要

被引文献

相似文献

在关系数据库管理系统中,视图补充了基本查询结构,以满足对“更高级别”数据视图的需求。此外,在传统的查询优化中,使用一组现有的物化视图回答查询可以产生更高效的查询执行计划。由于其有效性,视图对数据流管理系统很有吸引力。为了支持流视图,数据流管理系统应采用封闭(或可组合)连续查询语言。封闭查询语言是一种查询输入和输出以相同方式解释的语言,因此允许查询组合。本文介绍 Synchronized SQL(或 SyncSQL)查询语言,该语言将数据流定义为针对关系的一系列修改操作。 SyncSQL 通过统一解释查询输入和输出来实现查询组合。对数据流进行连续查询的一个重要问题是刷新答案的频率以及触发刷新的条件。较粗略的周期性刷新要求通常表示为滑动窗口。在本文中,通过介绍同步原理来概括滑动窗口方法,该同步原理使 SyncSQL 具有正式的机制来表达具有任意刷新条件的查询。在介绍了语义和语法之后,我们为 SyncSQL 奠定了代数基础,并提出了一种用于决定 SyncSQL 表达式包含的查询匹配算法。然后,本文介绍了支持SyncSQL查询的Nile-SyncSQL原型。 Nile-SyncSQL 采用管道增量评估范例,其中查询管道由一组差分运算符组成。开发成本模型是为了估计 SyncSQL 查询执行管道的成本,并从同一查询的一组不同计划中选择最佳执行计划。进行了一项实验研究来评估 Nile-SyncSQL 的性能。实验结果说明了 Nile-SyncSQL 的有效性以及在数据流管理系统中启用视图时的显着性能提升。
In relational database management systems, views supplement basic query constructs to cope with the demand for “higher-level” views of data. Moreover, in traditional query optimization, answering a query using a set of existing materialized views can yield a more efficient query execution plan. Due to their effectiveness, views are attractive to data stream management systems. In order to support views over streams, a data stream management system should employ a closed (or composable) continuous query language. A closed query language is a language in which query inputs and outputs are interpreted in the same way, hence allowing query composition. This article introduces the Synchronized SQL (or SyncSQL) query language that defines a data stream as a sequence of modify operations against a relation. SyncSQL enables query composition through the unified interpretation of query inputs and outputs. An important issue in continuous queries over data streams is the frequency by which the answer gets refreshed and the conditions that trigger the refresh. Coarser periodic refresh requirements are typically expressed as sliding windows. In this article, the sliding window approach is generalized by introducing the synchronization principle that empowers SyncSQL with a formal mechanism to express queries with arbitrary refresh conditions. After introducing the semantics and syntax, we lay the algebraic foundation for SyncSQL and propose a query-matching algorithm for deciding containment of SyncSQL expressions. Then, the article introduces the Nile-SyncSQL prototype to support SyncSQL queries. Nile-SyncSQL employs a pipelined incremental evaluation paradigm in which the query pipeline consists of a set of differential operators. A cost model is developed to estimate the cost of SyncSQL query execution pipelines and to choose the best execution plan from a set of different plans for the same query. An experimental study is conducted to evaluate the performance of Nile-SyncSQL. The experimental results illustrate the effectiveness of Nile-SyncSQL and the significant performance gains when views are enabled in data stream management systems.