Please wait a minute...
Frontiers of Computer Science

ISSN 2095-2228

ISSN 2095-2236(Online)

CN 10-1014/TP

Postal Subscription Code 80-970

2018 Impact Factor: 1.129

Front. Comput. Sci.    2024, Vol. 18 Issue (1) : 181201    https://doi.org/10.1007/s11704-022-1706-4
Software
QAAS: quick accurate auto-scaling for streaming processing
Shiyuan LIU1,2, Yunchun LI2,3, Hailong YANG1,2(), Ming DUN3, Chen CHEN3, Huaitao ZHANG4, Wei LI1
1. State Key Laboratory of Software Development Environment, Beijing 100191, China
2. School of Computer Science and Engineering, Beihang University, Beijing 100191, China
3. School of Cyber Science and Technology, Beihang University, Beijing 100191, China
4. School of Computer Science and Technology, Xi’an Jiaotong University, Xi’an 710049, China
 Download: PDF(5439 KB)   HTML
 Export: BibTeX | EndNote | Reference Manager | ProCite | RefWorks
Abstract

In recent years, the demand for real-time data processing has been increasing, and various stream processing systems have emerged. When the amount of data input to the stream processing system fluctuates, the computing resources required by the stream processing job will also change. The resources used by stream processing jobs need to be adjusted according to load changes, avoiding the waste of computing resources. At present, existing works adjust stream processing jobs based on the assumption that there is a linear relationship between the operator parallelism and operator resource consumption (e.g., throughput), which makes a significant deviation when the operator parallelism increases. This paper proposes a nonlinear model to represent operator performance. We divide the operator performance into three stages, the Non-competition stage, the Non-full competition stage, and the Full competition stage. Using our proposed performance model, given the parallelism of the operator, we can accurately predict the CPU utilization and operator throughput. Evaluated with actual experiments, the prediction error of our model is below 5%. We also propose a quick accurate auto-scaling (QAAS) method that uses the operator performance model to implement the auto-scaling of the operator parallelism of the Flink job. Compared to previous work, QAAS is able to maintain stable job performance under load changes, minimizing the number of job adjustments and reducing data backlogs by 50%.

Keywords stream processing      performance model      auto-scaling     
Corresponding Author(s): Hailong YANG   
About author: Changjian Wang and Zhiying Yang contributed equally to this work.
Just Accepted Date: 21 November 2022   Issue Date: 21 February 2023
 Cite this article:   
Shiyuan LIU,Yunchun LI,Hailong YANG, et al. QAAS: quick accurate auto-scaling for streaming processing[J]. Front. Comput. Sci., 2024, 18(1): 181201.
 URL:  
https://academic.hep.com.cn/fcs/EN/10.1007/s11704-022-1706-4
https://academic.hep.com.cn/fcs/EN/Y2024/V18/I1/181201
Fig.1  The impact of upstream operators on throughput
Fig.2  Simple stream processing job diagram
Variables Description
U CPU usage
C Thread clock count
T Throughput
p Operator parallelism
α The correlation coefficient between
The CPU utilization and
Throughput of the operator
k Operator input output ratio
t The continued product of k
Tab.1  Variable table
Fig.3  The causal relationship between the parallelism and throughput of operator
Fig.4  Correlation between variables
Fig.5  The relationship between the parallelism and throughput of operator
Fig.6  QAAS system model
Fig.7  The deployment of QAAS and flink cluster
  
Fig.8  The performance model evaluation
Fig.9  Comparison of models for throughput
Fig.10  Comparison of model MAPE
Fig.11  Comparing the impact of QAAS, DS2, and Caladrius models on operator parallelism, throughput, and data backlog
Time Design throughput Adjustment times
DS2 Caladrius QAAS
0−2 0 0 0 0
2−12 2000 2 2 1
12−22 4000 3 0 1
22−32 6000 2 3 2
32−42 10000 2 2 2
42−52 14000 3 3 0
52−62 18000 1 2 0
62−72 14000 0 0 0
72−82 6000 0 1 0
82−end 2000 2 4 2
Total / 15 17 8
Tab.2  Flink job adjustment times comparison
  
  
  
  
  
  
  
1 N, Vastardis K Yang . Mobile social networks: architectures, social properties, and key research challenges. IEEE Communications Surveys & Tutorials, 2013, 15( 3): 1355–1371
2 H, Chen R H L, Chiang V C Storey . Business intelligence and analytics: from big data to big impact. MIS Quarterly, 2012, 36( 4): 1165–1188
3 P, Carbone A, Katsifodimos S, Ewen V, Markl S, Haridi K Tzoumas . Apache flinkTM: stream and batch processing in a single engine. IEEE Data Engineering Bulletin, 2015, 38( 4): 28–38
4 Kulkarni S, Bhagat N, Fu M, Kedigehalli V, Kellogg C, Mittal S, Patel J M, Ramasamy K, Taneja S. Twitter heron: stream processing at scale. In: Proceedings of 2015 ACM SIGMOD International Conference on Management of Data. 2015, 239−250
5 Toshniwal A, Taneja S, Shukla A, Ramasamy K, Patel J M, Kulkarni S, Jackson J, Gade K, Fu M, Donham J, Bhagat N, Mittal S, Ryaboy D. Storm@twitter. In: Proceedings of 2014 ACM SIGMOD International Conference on Management of Data. 2014, 147−156
6 Y, Song Y, Li H, Yang J, Xu Z, Luan W Li . Adaptive watermark generation mechanism based on time series prediction for stream processing. Frontiers of Computer Science, 2021, 15( 6): 156213
7 B, Kahveci B Gedik . Joker: elastic stream processing with organic adaptation. Journal of Parallel and Distributed Computing, 2020, 137: 205–223
8 Kalim F, Cooper T, Wu H, Li Y, Wang N, Lu N, Fu M, Qian X, Luo H, Cheng D, Wang Y, Dai F, Ghosh M, Wang B. Caladrius: a performance modelling service for distributed stream processing systems. In: Proceedings of the 35th IEEE International Conference on Data Engineering (ICDE). 2019, 1886−1897
9 V, Kalavri J, Liagouris M, Hoffmann D C, Dimitrova M, Forshaw T Roscoe . Three steps is all you need: fast, accurate, automatic scaling decisions for distributed streaming dataflows. In: Proceedings of the 13th USENIX Symposium on Operating Systems Design and Implementation. 2018, 783−798
10 Mei Y, Cheng L, Talwar V, Levin M Y, Jacques-Silva G, Simha N, Banerjee A, Smith B, Williamson T, Yilmaz S, Chen W, Chen G J. Turbine: Facebook’s service management platform for stream processing. In: Proceedings of the 36th IEEE International Conference on Data Engineering (ICDE). 2020, 1591−1602
11 J, Kreps N, Narkhede J Rao . Kafka: a distributed messaging system for log processing. In: Proceedings of the NetDB. 2011, 1−7
12 B, Burns B, Grant D, Oppenheimer E, Brewer J Wilkes . Borg, omega, and kubernetes. Communications of the ACM, 2016, 59( 5): 50–57
13 V K, Vavilapalli A C, Murthy C, Douglas S, Agarwal M, Konar R, Evans T, Graves J, Lowe H, Shah S, Seth B, Saha C, Curino O, O’Malley S, Radia B, Reed E Baldeschwieler . Apache hadoop YARN: yet another resource negotiator. In: Proceedings of the 4th Annual Symposium on Cloud Computing. 2013, 5
14 H, Röger R Mayer . A comprehensive survey on parallelization and elasticity in stream processing. ACM Computing Surveys, 2020, 52( 2): 36
15 A, Floratou A, Agrawal B, Graham S, Rao K Ramasamy . Dhalion: self-regulating stream processing in heron. Proceedings of the VLDB Endowment, 2017, 10( 12): 1825–1836
16 V, Marangozova-Martin Palma N, de Rheddane A El . Multi-level elasticity for data stream processing. IEEE Transactions on Parallel and Distributed Systems, 2019, 30( 10): 2326–2337
17 H, Arkian G, Pierre J, Tordsson E Elmroth . An experiment-driven performance model of stream processing operators in fog computing environments. In: Proceedings of the 35th Annual ACM Symposium on Applied Computing. 2020, 1763−1771
[1] FCS-21706-OF-SL_suppl_1 Download
[1] Xiaotong WANG, Chunxi ZHANG, Junhua FANG, Rong ZHANG, Weining QIAN, Aoying ZHOU. A comprehensive study on fault tolerance in stream processing systems[J]. Front. Comput. Sci., 2022, 16(2): 162603-.
[2] Yang SONG, Yunchun LI, Hailong YANG, Jun XU, Zerong LUAN, Wei LI. Adaptive watermark generation mechanism based on time series prediction for stream processing[J]. Front. Comput. Sci., 2021, 15(6): 156213-.
[3] Yaopeng LIU, Hao PENG, Jianxin LI, Yangqiu SONG, Xiong LI. Event detection and evolution in multi-lingual social streams[J]. Front. Comput. Sci., 2020, 14(5): 145612-.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed