As the data collected by enterprises grows in scale, there is a growing trend of performing data analytics on large datasets. Batch processing systems that can handle petabyte scale of data, such as Hadoop, have flourished and gained traction in the industry. As the results of batch analytics have been used to continuously improve front-facing user experience, there is a growing interest in pushing the processing latency down. This trend has fueled a resurgence in the development and usage of execution engines that can process continuous queries.
An important class of continuous queries is windowed aggregation queries. Such queries arise in a wide range of applications such as generating personalized content and results. Today, considerable manual effort goes into finding the most suitable execution engine for these queries and on tuning query performance on these engines. An ecosystem composed of multiple execution engines may be needed in order to run the overall query workload efficiently given the diverse set of requirements that arise in practice.
Cyclops is a continuous query processing platform that manages and orchestrates windowed aggregation queries in an ecosystem composed of multiple continuous query execution engines. Cyclops employs a cost-based approach for picking the most suitable engine and plan for executing a given query. This demonstration first presents an interactive visualization of the rich execution plan space of windowed aggregation queries, which allows users to analyze and understand the differences among plans. The next part of the demonstration will drill down into the design of Cyclops. For a given query, we show the cost spectrum of query execution plans across three different execution engines---Esper, Storm, and Hadoop---as estimated by Cyclops.
[1]
Lu Liu,et al.
Muppet: MapReduce-Style Processing of Fast Data
,
2012,
Proc. VLDB Endow..
[2]
Jennifer Widom,et al.
Continuous queries over data streams
,
2001,
SGMD.
[3]
Sudipto Guha,et al.
SmartCIS: integrating digital and physical environments
,
2010,
SGMD.
[4]
Leonardo Neumeyer,et al.
S4: Distributed Stream Computing Platform
,
2010,
2010 IEEE International Conference on Data Mining Workshops.
[5]
Joseph M. Hellerstein,et al.
MapReduce Online
,
2010,
NSDI.
[6]
Badrish Chandramouli,et al.
Temporal Analytics on Big Data for Web Advertising
,
2012,
2012 IEEE 28th International Conference on Data Engineering.
[7]
Ying Xing,et al.
The Design of the Borealis Stream Processing Engine
,
2005,
CIDR.
[8]
Komal Shringare,et al.
Apache Hadoop Goes Realtime at Facebook
,
2015
.
[9]
David J. DeWitt,et al.
NiagaraCQ: a scalable continuous query system for Internet databases
,
2000,
SIGMOD '00.
[10]
Frederick Reiss,et al.
TelegraphCQ: Continuous Dataflow Processing for an Uncertain World
,
2003,
CIDR.
[11]
P. Cochat,et al.
Et al
,
2008,
Archives de pediatrie : organe officiel de la Societe francaise de pediatrie.
[12]
Laura M. Haas,et al.
Design and Implementation of the MaxStream Federated Stream Processing Architecture
,
2009
.