
HYPERSONIC: A Hybrid Parallelization Approach for Scalable
Complex Event Processing
Maor Yankovitch
Technion, Israel Institute of
Technology
Haifa, Israel
yankovitch@cs.technion.ac.il
Ilya Kolchinsky
Technion, Israel Institute of
Technology
Haifa, Israel
ikolchin@cs.technion.ac.il
Assaf Schuster
Technion, Israel Institute of
Technology
Haifa, Israel
assaf@cs.technion.ac.il
ABSTRACT
The ability to promptly and eciently detect arbitrarily complex
patterns in massive real-time data streams is a crucial requirement
in many modern applications. The ever-growing scale of these
applications and the sophistication of the patterns involved makes it
imperative to employ advanced solutions that can optimize pattern
detection. One of the most prominent and well-established ways
to achieve the above goal is to apply complex event processing
(CEP) in a parallel manner, using a multi-core machine and/or a
distributed environment. However, the inherent tightly coupled
nature of CEP severely limits the scalability of the parallelization
methods currently available.
In this paper, we introduce a novel parallelization mechanism for
ecient complex event processing over data streams. This mech-
anism is based on a hybrid two-tier model combining multiple
layers of parallelism. By employing a ne-grained load balancing
model, this multi-layered approach leads to a substantial increase
in event detection throughput, while at the same time reducing the
latency and the memory consumption. An extensive experimental
evaluation on multiple real-life datasets shows that our approach
consistently outperforms state-of-the-art CEP parallelization meth-
ods by a factor of two to three orders of magnitude.
CCS CONCEPTS
• Information systems
→
Stream management; Query opti-
mization; • Computing methodologies
→
Parallel algorithms;
Distributed algorithms.
KEYWORDS
Complex Event Processing, Parallel Query Processing, Distributed
Query Processing, Query Optimization
ACM Reference Format:
Maor Yankovitch, Ilya Kolchinsky, and Assaf Schuster. 2022. HYPERSONIC:
A Hybrid Parallelization Approach for Scalable Complex Event Processing.
In Proceedings of the 2022 International Conference on Management of Data
(SIGMOD ’22), June 12–17, 2022, Philadelphia, PA, USA. ACM, New York, NY,
USA, 17 pages. https://doi.org/10.1145/3514221.3517829
Permission to make digital or hard copies of all or part of this work for personal or
classroom use is granted without fee provided that copies are not made or distributed
for prot or commercial advantage and that copies bear this notice and the full citation
on the rst page. Copyrights for components of this work owned by others than ACM
must be honored. Abstracting with credit is permitted. To copy otherwise, or republish,
to post on servers or to redistribute to lists, requires prior specic permission and/or a
fee. Request permissions from permissions@acm.org.
SIGMOD ’22, June 12–17, 2022, Philadelphia, PA, USA
© 2022 Association for Computing Machinery.
ACM ISBN 978-1-4503-9249-5/22/06.. .$15.00
https://doi.org/10.1145/3514221.3517829
1 INTRODUCTION
Complex event processing (CEP) is a leading technology for robust
and high-performance real-time detection of arbitrarily complex
patterns in massive data streams [
26
,
27
,
32
]. It is widely employed
in many areas where the data is continuously generated in a stream-
ing manner and needs to be promptly and eciently analyzed on-
the-y. Online nance [
29
], credit card fraud detection [
68
], sensor
networks [
36
], healthcare industry [
15
], and IoT applications [
79
]
are among the many examples.
CEP engines treat the data items that make up the input streams
as primitive events arriving from event sources. As new primitive
events are observed, they are assembled into higher-level complex
events that match the user-dened patterns. Detecting complex
events is performed by collecting primitive events and incremen-
tally combining them into partial matches. As more events are added
to a partial match, a full pattern match is eventually formed and
reported. The loose order of constructing and extending partial
matches is dened by a graph-based structure, typically an automa-
ton or a tree, composed of a set of states. Each state represents
some intermediate stage of pattern detection. Figure 1 (and 1(b) in
particular) illustrates this principle.
As discussed by multiple authors [
7
,
45
,
54
], the processing time,
latency, and resource consumption of the CEP execution grows ex-
ponentially with the length of the pattern being detected. The main
factor contributing to this growth is the need to explicitly examine a
large number of sets of events to determine whether they comprise
valid pattern matches, which leads to a crucial performance bottle-
neck. The situation is exacerbated by the tight real-time constraints
imposed on these systems, as well as by a common requirement to
simultaneously process multiple patterns and streams. Therefore,
advanced optimization techniques are essential for achieving an
acceptable quality of service.
Parallelizing CEP evaluation ows is one of the most prominent
avenues for improving the performance of event processing appli-
cations. Various techniques for allocating the workload of a CEP
system to multiple execution units and managing their parallel
execution have been proposed, addressing multi-core and fully dis-
tributed scenarios. These solutions can be roughly divided into two
separate categories: data-parallel and state-parallel methods.
Data-parallel approaches [
12
,
37
,
51
] operate by splitting the
input data stream into dierent partitions according to predened
criteria and routing each partition to a dedicated execution unit;
this unit may be a thread, a process, or a separate machine. Each
unit then applies the same pattern matching process on the data it
receives, and the resulting pattern matches are merged and jointly
returned to the end users. Figure 1(a) presents an example of a
1
Session 15: Streaming and Sensor Networks 2
SIGMOD ’22, June 12–17, 2022, Philadelphia, PA, USA
评论