Multi-Objective Optimization of Consumer Group Autoscaling in Message Broker Systems (2402.06085v1)
Abstract: Message brokers often mediate communication between data producers and consumers by adding variable-sized messages to ordered distributed queues. Our goal is to determine the number of consumers and consumer-partition assignments needed to ensure that the rate of data consumption keeps up with the rate of data production. We model the problem as a variable item size bin packing problem. As the rate of production varies, new consumer-partition assignments are computed, which may require rebalancing a partition from one consumer to another. While rebalancing a queue, the data being produced into the queue is not read leading to additional latency costs. As such, we focus on the multi-objective optimization cost of minimizing both the number of consumers and queue migrations. We present a variety of algorithms and compare them to established bin packing heuristics for this application. Comparing our proposed consumer group assignment strategy with Kafka's, a commonly employed strategy, our strategy presents a 90th percentile latency of 4.52s compared to Kafka's 217s with both using the same amount of consumers. Kafka's assignment strategy only improved the consumer group's performance with regards to latency with configurations that used at least 60% more resources than our approach.
- L. Magnoni, “Modern messaging for distributed sytems,” in Journal of Physics: Conference Series, vol. 608, no. 1. IOP Publishing, 2015, p. 012038.
- V. John and X. Liu, “A survey of distributed message broker queues,” arXiv preprint arXiv:1704.00411, 2017.
- P. Chindanonda, V. Podolskiy, and M. Gerndt, “Self-adaptive data processing to improve slos for dynamic iot workloads,” Computers, vol. 9, no. 1, p. 12, 2020.
- M. Ezzeddine, G. Migliorini, F. Baude, and F. Huet, “Cost-efficient and latency-aware event consuming in workload-skewed distributed event queues,” in Proceedings of the 2022 6th International Conference on Cloud and Big Data Computing, 2022, pp. 62–70.
- C. Lumezanu, N. Spring, and B. Bhattacharjee, “Decentralized message ordering for publish/subscribe systems,” in Middleware 2006: ACM/IFIP/USENIX 7th International Middleware Conference, Melbourne, Australia, November 27-December 1, 2006. Proceedings 7. Springer, 2006, pp. 162–179.
- S. Burckhardt, D. Leijen, M. Fähndrich, and M. Sagiv, “Eventually consistent transactions,” in European Symposium on Programming. Springer, 2012, pp. 67–86.
- Y.-Y. Su and J. Flinn, “Slingshot: Deploying stateful services in wireless hotspots,” in Proceedings of the 3rd international conference on Mobile systems, applications, and services, 2005, pp. 79–92.
- P. Carbone, S. Ewen, G. Fóra, S. Haridi, S. Richter, and K. Tzoumas, “State management in apache flink®: consistent stateful distributed stream processing,” Proceedings of the VLDB Endowment, vol. 10, no. 12, pp. 1718–1729, 2017.
- A. D. Kshemkalyani, M. Raynal, and M. Singhal, “An introduction to snapshot algorithms in distributed computing,” Distributed systems engineering, vol. 2, no. 4, p. 224, 1995.
- G. van Dongen and D. Van Den Poel, “A performance analysis of fault recovery in stream processing frameworks,” IEEE Access, vol. 9, pp. 93 745–93 763, 2021.
- M. Nardelli, V. Cardellini, V. Grassi, and F. L. Presti, “Efficient operator placement for distributed data stream processing applications,” IEEE Transactions on Parallel and Distributed Systems, vol. 30, no. 8, pp. 1753–1767, 2019.
- F. Furini, E. Malaguti, R. Medina Durán, A. Persiani, and P. Toth, “A column generation heuristic for the two-dimensional two-staged guillotine cutting stock problem with multiple stock size,” European Journal of Operational Research, vol. 218, no. 1, pp. 251–260, 2012. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S0377221711009374
- M. Dell’Amico, F. Furini, and M. Iori, “A branch-and-price algorithm for the temporal bin packing problem,” Computers & Operations Research, vol. 114, p. 104825, 2020.
- M. Delorme, M. Iori, and S. Martello, “Logic based benders’ decomposition for orthogonal stock cutting problems,” Computers & Operations Research, vol. 78, pp. 290–298, 2017.
- Q. Xia, W. Liang, and W. Xu, “Throughput maximization for online request admissions in mobile cloudlets,” in 38th Annual IEEE Conference on Local Computer Networks. IEEE, 2013, pp. 589–596.
- V. Gulisano, R. Jimenez-Peris, M. Patino-Martinez, C. Soriente, and P. Valduriez, “Streamcloud: An elastic and scalable data streaming system,” IEEE Transactions on Parallel and Distributed Systems, vol. 23, no. 12, pp. 2351–2365, 2012.
- T. Heinze, Y. Ji, Y. Pan, F. J. Grueneberger, Z. Jerzak, and C. Fetzer, “Elastic complex event processing under varying query load.” BD3@ VLDB, vol. 1018, pp. 25–30, 2013.
- S. Kamali, “Efficient bin packing algorithms for resource provisioning in the cloud,” in Algorithmic Aspects of Cloud Computing: First International Workshop, ALGOCLOUD 2015, Patras, Greece, September 14-15, 2015. Revised Selected Papers. Springer, 2016, pp. 84–98.
- L. Shi, J. Furlong, and R. Wang, “Empirical evaluation of vector bin packing algorithms for energy efficient data centers,” in 2013 IEEE symposium on computers and communications (ISCC). IEEE, 2013, pp. 000 009–000 015.
- Z. Á. Mann, “Approximability of virtual machine allocation: much harder than bin packing,” 2015.
- W. Song, Z. Xiao, Q. Chen, and H. Luo, “Adaptive resource provisioning for the cloud using online bin packing,” IEEE Transactions on Computers, vol. 63, no. 11, pp. 2647–2660, 2013.
- O. Hadary, L. Marshall, I. Menache, A. Pan, E. E. Greeff, D. Dion, S. Dorminey, S. Joshi, Y. Chen, M. Russinovich et al., “Protean: Vm allocation service at scale,” in Proceedings of the 14th USENIX Conference on Operating Systems Design and Implementation, 2020, pp. 845–861.
- R. Panigrahy, K. Talwar, L. Uyeda, and U. Wieder, “Heuristics for vector bin packing,” research. microsoft. com, 2011.
- S. Berndt, K. Jansen, and K.-M. Klein, “Fully dynamic bin packing revisited,” Mathematical Programming, vol. 179, no. 1-2, pp. 109–155, 2020.
- K. Fleszar and K. S. Hindi, “New heuristics for one-dimensional bin-packing,” Computers & operations research, vol. 29, no. 7, pp. 821–839, 2002.
- E. G. Coffman, J. Csirik, G. Galambos, S. Martello, and D. Vigo, “Bin packing approximation algorithms: survey and classification,” in Handbook of combinatorial optimization, 2013, pp. 455–531.
- E. G. Coffman, G. Galambos, S. Martello, and D. Vigo, “Bin packing approximation algorithms: Combinatorial analysis,” Handbook of Combinatorial Optimization: Supplement Volume A, pp. 151–207, 1999.
- D. S. Johnson, A. Demers, J. D. Ullman, M. R. Garey, and R. L. Graham, “Worst-case performance bounds for simple one-dimensional packing algorithms,” SIAM Journal on computing, vol. 3, no. 4, pp. 299–325, 1974.
- E. C. man Jr, M. Garey, and D. Johnson, “Approximation algorithms for bin packing: A survey,” Approximation algorithms for NP-hard problems, pp. 46–93, 1996.
- B. S. Baker and E. G. Coffman, Jr, “A tight asymptotic bound for next-fit-decreasing bin-packing,” SIAM Journal on Algebraic Discrete Methods, vol. 2, no. 2, pp. 147–152, 1981.
- S. Kamburugamuve and G. Fox, “Survey of distributed stream processing,” Bloomington: Indiana University, p. 153, 2016.
- K. M. M. Thein, “Apache kafka: Next generation distributed messaging system,” International Journal of Scientific Engineering and Technology Research, vol. 3, no. 47, pp. 9478–9483, 2014.
- S. Kamburugamuve, L. Christiansen, and G. Fox, “A framework for real time processing of sensor data in the cloud,” Journal of Sensors, vol. 2015, 2015.