Apriori Algorithm Based Approach for Improving QoS and SLA Guarantee in IaaS Clouds Using Pattern-Based Service-Oriented Architecture | SN Computer Science Skip to main content

Advertisement

Log in

Apriori Algorithm Based Approach for Improving QoS and SLA Guarantee in IaaS Clouds Using Pattern-Based Service-Oriented Architecture

  • Original Research
  • Published:
SN Computer Science Aims and scope Submit manuscript

Abstract

Cloud computing is a modern computing technology. The integration of fog computing, edge computing, mist computing, IoT, 5G, etc. with cloud computing adds immense power to cloud computing. However, this integration leads to two problems. The first problem is to define an interoperable cloud architecture and the second problem is resource allocation to optimize performance. To address both problems, we propose a SOA for cloud. We implement a machine learning based Apriori algorithm, to find association rules between QoS to define a stronger SLA. This approach also helps in defining better and simpler resource management policies and for developer it becomes easier to develop and deploy cloud applications. When cloud manages resources in a well-defined manner, revenue is optimized easily with maintaining required QoS levels. Experiments and detailed discussion show that this approach successfully helps in defining better SLA and implement a simpler resource management policy, makes easier to handle QoS, reduces costs and optimizes revenues.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
¥17,985 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price includes VAT (Japan)

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

Data availability

The data used for this experiment is available by making a request to corrosponding author.

References

  1. Singh J, Dhiman G. A survey on cloud computing approaches. Mater Today Proc Sci Direct. 2021. https://doi.org/10.1016/j.matpr.2021.05.334. (ISSN 2214-7853).

    Article  Google Scholar 

  2. Raza MR, Varol A. QoS parameters for viable SLA in cloud. In: 2020 8th international symposium on digital forensics and security (ISDFS). Beirut, Lebanon; 2020. p. 1–5. https://doi.org/10.1109/ISDFS49300.2020.9116311.

  3. Mariem J, Ghazel C, Saïdane LA. A survey on quality of service in cloud computing. 2017 3rd international conference on frontiers of signal processing (ICFSP). IEEE; 2017.

  4. Erich G, et al. Elements of reusable object-oriented software. London: Pearson; 2015.

    Google Scholar 

  5. Fehlin C. Cloud computing patterns: identification, design, and application. Thesis/Dissertation ETD, Universität Stuttgart; 2015.

  6. Naghmeh N, et al. Understanding service-oriented architecture (SOA): a systematic literature review and directions for further investigation. Inf Syst. 2020;91:101491.

    Article  Google Scholar 

  7. Tsai W-T, Sun X, Balasooriya J. Service-oriented cloud computing architecture. 2010 seventh international conference on information technology: new generations. IEEE; 2010.

  8. Zimmermann A, et al. Evolution of enterprise architecture for digital transformation. 2018 IEEE 22nd international enterprise distributed object computing workshop (EDOCW). IEEE; 2018.

  9. Alkkiomäki V. The role of service-oriented architecture as a part of the business model. Int J Bus Inf Syst. 2016;21(3):368–87.

    Google Scholar 

  10. Hustad E, Olsen DH. Creating a sustainable digital infrastructure: The role of service-oriented architecture. Procedia Comput Sci. 2021;181:597–604.

    Article  Google Scholar 

  11. Bernal WN, et al. Enterprise architecture framework oriented to cloud computing services. 2016 6th international conference on computers communications and control (ICCCC). IEEE; 2016.

  12. Rojas H, Arias KA, Renteria R. Service-oriented architecture design for small and medium enterprises with infrastructure and cost optimization. Procedia Comput Sci. 2021;179:488–97.

    Article  Google Scholar 

  13. Madni SHH, et al. Recent advancements in resource allocation techniques for cloud computing environment: a systematic review. Clust Comput. 2017;20(3):2489–533.

    Article  Google Scholar 

  14. Ardagna D, et al. Quality-of-service in cloud computing: modeling techniques and their applications. J Internet Serv Appl. 2014;5(1):1–17.

    Article  MathSciNet  Google Scholar 

  15. Wazir U, Khan FG, Shah S. Service level agreement in cloud computing: a survey. Int J Comput Sci Inf Secur. 2016;14(6):324.

    Google Scholar 

  16. Uriarte RB, Tiezzi F, De Nicola R. Dynamic slas for clouds. European conference on service-oriented and cloud computing. Cham: Springer; 2016.

  17. Halboob W, et al. Dynamically changing service level agreements (SLAs) management in cloud computing. International conference on intelligent computing. Cham: Springer; 2014.

  18. Jain R, Sharma N. A quantum inspired hybrid SSA–GWO algorithm for SLA based task scheduling to improve QoS parameter in cloud computing. Cluster Comput. 2022. https://doi.org/10.1007/s10586-022-03740-x.

    Article  Google Scholar 

  19. Edinat A, Al-Sayyed R, Hudaib A. A survey on improving QoS in service level agreement for cloud computing environment. iJIM. 2021;15(21):119.

    Google Scholar 

  20. Ghahramani MH, Zhou MS, Hon CT. Toward cloud computing QoS architecture: analysis of cloud systems and cloud services. IEEE/CAA J Autom Sin. 2017;4(1):6–18.

    Article  MathSciNet  Google Scholar 

  21. Badawy MM, Ali ZH, Ali HA. QoS provisioning framework for service-oriented internet of things (IoT). Clust Comput. 2020;23(2):575–91.

    Article  Google Scholar 

  22. Haytamy S, Omara F. A deep learning based framework for optimizing cloud consumer QoS-based service composition. Computing. 2020;102(5):1117–37.

    Article  Google Scholar 

  23. Choi Y, Lim Y. Optimization approach for resource allocation on cloud computing for IoT. Int J Distrib Sens Netw. 2016;12(3):3479247.

    Article  Google Scholar 

  24. Thein T, et al. Reinforcement learning based methodology for energy-efficient resource allocation in cloud data centers. J King Saud Univ Comput Inf Sci. 2020;32(10):1127–39.

    Google Scholar 

  25. Sarker IH. Machine learning: algorithms, real-world applications and research directions. SN Comput Sci. 2021;2(3):1–21.

    Article  MathSciNet  Google Scholar 

  26. Nawrocki P, Osypanka P. Cloud resource demand prediction using machine learning in the context of qos parameters. J Grid Comput. 2021;19(2):1–20.

    Article  Google Scholar 

  27. Moreno-Vozmediano R, et al. Efficient resource provisioning for elastic cloud services based on machine learning techniques. J Cloud Comput. 2019;8(1):1–18.

    Article  Google Scholar 

  28. Kumar VP, Prakash KB. Adaptive resource management utilizing reinforcement learning technique in inter-cloud environments. IOP conference series: materials science and engineering, Vol. 1055(1). IOP Publishing; 2021.

  29. Wang C, Zheng X. Application of improved time series Apriori algorithm by frequent itemsets in association rule data mining based on temporal constraint. Evol Intell. 2020;13(1):39–49.

    Article  Google Scholar 

  30. AlZu'bi S, et al. A novel recommender system based on apriori algorithm for requirements engineering. 2018 fifth international conference on social networks analysis, management and security (snams). IEEE; 2018.

  31. Silva J, et al. Association rules extraction for customer segmentation in the SMEs sector using the apriori algorithm. Procedia Comput Sci. 2019;151:1207–12.

    Article  Google Scholar 

  32. Chrysoulas C, Fasli M. A service oriented QoS architecture targeting the smart grid world and machine learning aspects. 2016 International multidisciplinary conference on computer and energy science (SpliTech). IEEE; 2016.

  33. Karimi MB, Isazadeh A, Rahmani AM. QoS-aware service composition in cloud computing using data mining techniques and genetic algorithm. J Supercomput. 2017;73(4):1387–415.

    Article  Google Scholar 

  34. Godhrawala H, Sridaran R. A dynamic Stackelberg game based multi-objective approach for effective resource allocation in cloud computing. Int Inf Technol. 2022;15:1–16.

    Google Scholar 

  35. Chana I, Singh S. Quality of service and service level agreements for cloud environments: issues and challenges. Cloud Comput. 2014. https://doi.org/10.1007/978-3-319-10530-7_3.

    Article  Google Scholar 

  36. Godhrawala H, Sridaran R. Improving architectural reusability for resource allocation framework in futuristic cloud computing using decision tree based multi-objective automated approach. In: Rajagopal S, Faruki P, Popat K, editors. Advancements in smart computing and information security. ASCIS 2022. Communications in computer and information science, vol. 1759. Cham: Springer; 2022. https://doi.org/10.1007/978-3-031-23092-9_32.

    Chapter  Google Scholar 

  37. Labidi T, Mtibaa A, Gargouri F. Ontology-based context-aware SLA management for cloud computing. Model and data engineering: 4th international conference, MEDI 2014, Larnaca, Cyprus, September 24–26, 2014. Proceedings 4. Springer International Publishing; 2014.

  38. Labidi T, et al. Cloud SLA modeling and monitoring. 2017 IEEE international conference on services computing (SCC). IEEE; 2017.

  39. Gill SS, et al. AI for next generation computing: Emerging trends and future directions. Internet Things. 2022;19:100514.

    Article  Google Scholar 

  40. Khan T, et al. Machine learning (ML)—centric resource management in cloud computing: a review and future directions. J Netw Comput Appl. 2022;204:103405.

    Article  Google Scholar 

  41. Gacanin H, Wagner M. Artificial intelligence paradigm for customer experience management in next-generation networks: challenges and perspectives. IEEE Netw. 2019;33(2):188–94.

    Article  Google Scholar 

  42. Gaur V, Dhyani P, Rishi OP. A multi-objective optimization of cloud based sla-violation prediction and adaptation. Int J Inf Technol Comput Sci. 2016;8(6):60–5.

    Google Scholar 

  43. Raza MR, Varol A. QoS parameters for viable SLA in cloud. 2020 8th international symposium on digital forensics and security (ISDFS). IEEE; 2020.

  44. Tuli S, et al. HUNTER: AI based holistic resource management for sustainable cloud computing. J Syst Softw. 2022;184:111124.

    Article  Google Scholar 

  45. De Sanctis M, Muccini H, Vaidhyanathan K. Data-driven adaptation in microservice-based iot architectures. 2020 IEEE international conference on software architecture companion (ICSA-C). IEEE; 2020.

  46. Agrawal R, et al. Fast discovery of association rules. Adv Knowl Discov Data Min. 1996;12(1):307–28.

    Google Scholar 

  47. Online Python compiling tool. https://www.programiz.com/python-programming/online-compiler/. Accessed 15 Jan 2023.

  48. Hassan H, et al. Enhanced QoS-based model for trust assessment in cloud computing environment. IEEE Access. 2020;8:43752–63.

    Article  Google Scholar 

  49. Zúñiga-Prieto MÁ, Gonzalez-Huerta J, Insfran E, Abrahao Gonzales SM. Dynamic reconfiguration of cloud application architectures. Softw Pract Exp. 2018;48(2):327–44.

    Article  Google Scholar 

  50. Gorski T, Woźniak AP. Optimization of business process execution in services architecture: a systematic literature review. IEEE Access. 2021;9:111833–52.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Husain Godhrawala.

Ethics declarations

Conflict of Interest

We hereby declare that we have no conflicting financial or non-financial interests that are directly or indirectly related to the work submitted for publication.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This article is part of the topical collection “Soft Computing Solutions for Secured & Smart Applications” guest edited by Sridaran Rajagopal and Kalpesh Popat.

Appendix

Appendix

Following shows the detailed computation of Apriori Implementation. C indicates candidate sets, while L indicates Level or Large Itemset. The result trail of entire dataset of 500 transaction is listed below.

['Availability', 'Cost', 'Energy Optimization', 'Interoperable', 'Response Time', 'Throughput'].

C1:

['Availability']: 272.

['Cost']: 293.

['Energy Optimization']: 282.

['Interoperable']: 283.

['Response Time']: 268.

['Throughput']: 277.

L1:

['Availability']: 272.

['Cost']: 293.

['Energy Optimization']: 282.

['Interoperable']: 283.

['Response Time']: 268.

['Throughput']: 277.

C2:

['Availability', 'Cost']: 98.

['Interoperable', 'Cost']: 162.

['Availability', 'Throughput']: 238.

['Interoperable', 'Throughput']: 162.

['Availability', 'Response Time']: 224.

['Interoperable', 'Response Time']: 147.

['Throughput', 'Cost']: 82.

['Response Time', 'Energy Optimization']: 50.

['Energy Optimization', 'Cost']: 218.

['Response Time', 'Cost']: 98.

['Throughput', 'Energy Optimization']: 70.

['Response Time', 'Throughput']: 234.

['Interoperable', 'Energy Optimization']: 160.

['Availability', 'Energy Optimization']: 86.

['Availability', 'Interoperable']: 168.

L2:

['Availability', 'Cost']: 98.

['Interoperable', 'Cost']: 162.

['Availability', 'Throughput']: 238.

['Interoperable', 'Throughput']: 162.

['Availability', 'Response Time']: 224.

['Interoperable', 'Response Time']: 147.

['Throughput', 'Cost']: 82.

['Response Time', 'Energy Optimization']: 50.

['Energy Optimization', 'Cost']: 218.

['Response Time', 'Cost']: 98.

['Throughput', 'Energy Optimization']: 70.

['Response Time', 'Throughput']: 234.

['Interoperable', 'Energy Optimization']: 160.

['Availability', 'Energy Optimization']: 86.

['Availability', 'Interoperable']: 168.

C3:

['Availability', 'Interoperable', 'Cost']: 59.

['Throughput', 'Cost', 'Response Time']: 64.

['Interoperable', 'Throughput', 'Energy Optimization']: 50.

['Interoperable', 'Throughput', 'Cost']: 53.

['Interoperable', 'Cost', 'Response Time']: 63.

['Response Time', 'Cost', 'Energy Optimization']: 23.

['Availability', 'Throughput', 'Response Time']: 213.

['Availability', 'Energy Optimization', 'Cost']: 34.

['Availability', 'Response Time', 'Interoperable']: 136.

['Availability', 'Response Time', 'Cost']: 75.

['Interoperable', 'Energy Optimization', 'Response Time']: 24.

['Energy Optimization', 'Interoperable', 'Cost']: 110.

['Response Time', 'Throughput', 'Energy Optimization']: 27.

['Availability', 'Interoperable', 'Energy Optimization']: 56.

['Energy Optimization', 'Throughput', 'Cost']: 18.

['Availability', 'Response Time', 'Energy Optimization']: 38.

['Availability', 'Throughput', 'Energy Optimization']: 52.

['Availability', 'Throughput', 'Interoperable']: 150.

['Interoperable', 'Throughput', 'Response Time']: 125.

['Availability', 'Throughput', 'Cost']: 64.

L3:

['Availability', 'Interoperable', 'Cost']: 59.

['Throughput', 'Cost', 'Response Time']: 64.

['Interoperable', 'Throughput', 'Energy Optimization']: 50.

['Interoperable', 'Throughput', 'Cost']: 53.

['Interoperable', 'Cost', 'Response Time']: 63.

['Response Time', 'Cost', 'Energy Optimization']: 23.

['Availability', 'Throughput', 'Response Time']: 213.

['Availability', 'Energy Optimization', 'Cost']: 34.

['Availability', 'Response Time', 'Interoperable']: 136.

['Availability', 'Response Time', 'Cost']: 75.

['Interoperable', 'Energy Optimization', 'Response Time']: 24.

['Energy Optimization', 'Interoperable', 'Cost']: 110.

['Response Time', 'Throughput', 'Energy Optimization']: 27.

['Availability', 'Interoperable', 'Energy Optimization']: 56.

['Energy Optimization', 'Throughput', 'Cost']: 18.

['Availability', 'Response Time', 'Energy Optimization']: 38.

['Availability', 'Throughput', 'Energy Optimization']: 52.

['Availability', 'Throughput', 'Interoperable']: 150.

['Interoperable', 'Throughput', 'Response Time']: 125.

['Availability', 'Throughput', 'Cost']: 64.

C4:

['Throughput', 'Response Time', 'Cost', 'Interoperable']: 41.

['Response Time', 'Energy Optimization', 'Availability', 'Interoperable']: 24.

['Throughput', 'Response Time', 'Cost', 'Energy Optimization']: 0

['Throughput', 'Energy Optimization', 'Availability', 'Interoperable']: 38.

['Cost', 'Energy Optimization', 'Availability', 'Interoperable']: 18.

['Throughput', 'Response Time', 'Energy Optimization', 'Availability']: 27.

['Response Time', 'Cost', 'Energy Optimization', 'Availability']: 11.

['Throughput', 'Response Time', 'Cost', 'Availability']: 64.

['Throughput', 'Energy Optimization', 'Cost', 'Availability']: 0

['Throughput', 'Cost', 'Availability', 'Interoperable']: 41.

['Throughput', 'Response Time', 'Availability', 'Interoperable']: 125.

['Response Time', 'Cost', 'Availability', 'Interoperable']: 52['Throughput', 'Response Time', 'Energy Optimization', 'Interoperable']: 13.

['Response Time', 'Cost', 'Energy Optimization', 'Interoperable']: 11.

['Throughput', 'Energy Optimization', 'Cost', 'Interoperable']: 12.

L4:

['Throughput', 'Response Time', 'Cost', 'Interoperable']: 41.

['Response Time', 'Energy Optimization', 'Availability', 'Interoperable']: 24.

['Throughput', 'Energy Optimization', 'Availability', 'Interoperable']: 38.

['Cost', 'Energy Optimization', 'Availability', 'Interoperable']: 18.

['Throughput', 'Response Time', 'Energy Optimization', 'Availability']: 27.

['Response Time', 'Cost', 'Energy Optimization', 'Availability']: 11.

['Throughput', 'Response Time', 'Cost', 'Availability']: 64.

['Throughput', 'Cost', 'Availability', 'Interoperable']: 41.

['Throughput', 'Response Time', 'Availability', 'Interoperable']: 125.

['Response Time', 'Cost', 'Availability', 'Interoperable']: 52.

['Throughput', 'Response Time', 'Energy Optimization', 'Interoperable']: 13.

['Response Time', 'Cost', 'Energy Optimization', 'Interoperable']: 11.

['Throughput', 'Energy Optimization', 'Cost', 'Interoperable']: 12.

C5:

['Interoperable', 'Response Time', 'Energy Optimization', 'Cost', 'Availability']: 11.

['Throughput', 'Interoperable', 'Response Time', 'Energy Optimization', 'Availability']: 13.

['Throughput', 'Interoperable', 'Energy Optimization', 'Cost', 'Availability']: 0

['Throughput', 'Interoperable', 'Response Time', 'Cost', 'Availability']: 41.

['Throughput', 'Response Time', 'Energy Optimization', 'Cost', 'Availability']: 0

['Throughput', 'Interoperable', 'Response Time', 'Cost', 'Energy Optimization']: 0

L5:

['Interoperable', 'Response Time', 'Energy Optimization', 'Cost', 'Availability']: 11.

['Throughput', 'Interoperable', 'Response Time', 'Energy Optimization', 'Availability']: 13.

['Throughput', 'Interoperable', 'Response Time', 'Cost', 'Availability']: 41.

C6:

['Throughput', 'Interoperable', 'Response Time', 'Energy Optimization', 'Cost', 'Availability']: 0

L6:

Result:

L6:

['Interoperable', 'Response Time', 'Energy Optimization', 'Cost', 'Availability']: 11.

['Throughput', 'Interoperable', 'Response Time', 'Energy Optimization', 'Availability']: 13.

['Throughput', 'Interoperable', 'Response Time', 'Cost', 'Availability']: 41.

  1. 1.

    ['Interoperable', 'Cost', 'Energy Optimization', 'Response Time']—> ['Availability'] = 100.0%

  2. 2.

    ['Availability']—> ['Interoperable', 'Cost', 'Energy Optimization', 'Response Time'] = 4.04%

  3. 3.

    ['Availability', 'Interoperable', 'Energy Optimization', 'Response Time']—> ['Cost'] = 45.83%

  4. 4.

    ['Cost']—> ['Availability', 'Interoperable', 'Energy Optimization', 'Response Time'] = 3.75%

  5. 5.

    ['Availability', 'Interoperable', 'Cost', 'Response Time']—> ['Energy Optimization'] = 21.15%

  6. 6.

    ['Energy Optimization']—> ['Availability', 'Interoperable', 'Cost', 'Response Time'] = 3.90%

  7. 7.

    ['Availability', 'Interoperable', 'Cost', 'Energy Optimization']—> ['Response Time'] = 61.111%

  8. 8.

    ['Response Time']—> ['Availability', 'Interoperable', 'Cost', 'Energy Optimization'] = 4.10%

  9. 9.

    ['Availability', 'Response Time', 'Cost', 'Energy Optimization']—> ['Interoperable'] = 100.0%

  10. 10.

    ['Interoperable']—> ['Availability', 'Response Time', 'Cost', 'Energy Optimization'] = 3.88%

Choosing: 1 9.

  1. 1.

    ['Throughput', 'Interoperable', 'Energy Optimization', 'Response Time']—> ['Availability'] = 100.0%

  2. 2.

    ['Availability']—> ['Throughput', 'Interoperable', 'Energy Optimization', 'Response Time'] = 4.77%

  3. 3.

    ['Availability', 'Throughput', 'Interoperable', 'Response Time']—> ['Energy Optimization'] = 10.4%

  4. 4.

    ['Energy Optimization']—> ['Availability', 'Throughput', 'Interoperable', 'Response Time'] = 4.60%

  5. 5.

    ['Availability', 'Throughput', 'Interoperable', 'Energy Optimization']—> ['Response Time'] = 34.21%

  6. 6.

    ['Response Time']—> ['Availability', 'Throughput', 'Interoperable', 'Energy Optimization'] = 4.85%

  7. 7.

    ['Availability', 'Throughput', 'Energy Optimization', 'Response Time']—> ['Interoperable'] = 48.14%

  8. 8.

    ['Interoperable']—> ['Availability', 'Throughput', 'Energy Optimization', 'Response Time'] = 4.59%

  9. 9.

    ['Availability', 'Interoperable', 'Energy Optimization', 'Response Time']—> ['Throughput'] = 54.16%

  10. 10.

    ['Throughput']—> ['Availability', 'Interoperable', 'Energy Optimization', 'Response Time'] = 4.69%

Choosing: 1

  1. 1.

    ['Throughput', 'Interoperable', 'Cost', 'Response Time']—> ['Availability'] = 100.0%

  2. 2.

    ['Availability']—> ['Throughput', 'Interoperable', 'Cost', 'Response Time'] = 15.07%

  3. 3.

    ['Availability', 'Throughput', 'Interoperable', 'Response Time']—> ['Cost'] = 32.80%

  4. 4.

    ['Cost']—> ['Availability', 'Throughput', 'Interoperable', 'Response Time'] = 13.99%

  5. 5.

    ['Availability', 'Throughput', 'Interoperable', 'Cost']—> ['Response Time'] = 100.0%

  6. 6.

    ['Response Time']—> ['Availability', 'Throughput', 'Interoperable', 'Cost'] = 15.29%

Choosing: 1 5.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Godhrawala, H., Sridaran, R. Apriori Algorithm Based Approach for Improving QoS and SLA Guarantee in IaaS Clouds Using Pattern-Based Service-Oriented Architecture. SN COMPUT. SCI. 4, 700 (2023). https://doi.org/10.1007/s42979-023-02079-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s42979-023-02079-3

Keywords