Abstract
Enterprise thrives on software applications that are built to fulfil the core business requirements. A single business application can offer a cluster of capabilities to generate value from processing huge amount of data often termed as Big Data. The time-based requirements of these applications are satisfied frequently by applying monolithic approaches with increased complexity and less scalability. Traditional approaches for Big Data Analytics suffer from overpriced, excessive and irrelevant data transfer owing to the constricted coupling amongst computing resources and data processing logic. Service-oriented approach came into existence as a new paradigm to enable applications to be rendered as service for better flexibility and scalability. Service orientation architecture avoids monolithic style but web services, one of its major implementation encourages monolith development of software application. Thus building a scalable, robust, resilient, cost-effective and optimum solution is one of the major requirements for outsized data. New software development style Microservices offer low degree of coupling and smaller size. This work reviews the existing and prevalent approaches like monolithic architecture in this area along with their drawbacks. This work also proposes a generic microservice model µBIGMSA for handling Knowledge Discovery in Big Data. Reference applications are implemented using proposed model. The effectiveness of the proposed model is evaluated by comparing the reference application with the monolithic application using various software metrics.
Similar content being viewed by others
References
Valsamis, A., Tserpes, K., Zissis, D., Anagnostopoulos, D., & Varvarigou, T. (2017). Employing traditional machine learning algorithms for big data streams analysis: The case of object trajectory prediction. Journal of System Software, 127, 249–257.
Jamshidi, P., Pahl, C., Mendonça, N. C., Lewis, J., & Tilkov, S. (2018). Microservices: The journey so far and challenges ahead. IEEE Software, 35(3), 24–35.
Mario, V. et al. (2016). Infrastructure cost comparison of running web applications in the cloud using AWS lambda and monolithic and microservice architectures. In International Symposium on Cluster, Cloud and Grid Computing (CCGrid). IEEE.
Blesson, V., & Buyya, R. (2018). Next generation cloud computing: New trends and research directions. Future Generation Computer Systems, 79, 849–861.
Richardson C., et al. (2017). Microservice patterns. Shelter Island: Manning Publications.
Michele, C., et al. (2017). A microservice-based middleware for the digital factory. Procedia Manufacturing, 11, 931–938.
Jonas, F., et al. (2019). Microservices migration in industry: Intentions, strategies, and challenges. In IEEE international conference on software maintenance and evolution (ICSME). IEEE (pp. 481–490).
Furda, A., Fidge, C., Zimmermann, O., Kelly, W., & Barros, A. (2018). Migrating enterprise legacy source code to microservices: On multitenancy, statefulness, and data consistency. IEEE Software, 35(3), 63–72.
Eyhab, A. M., et al. (2018). Enhancing the microservices architecture for the internet of things. In IEEE international conference on big data (big data). IEEE (pp. 5119–5125).
Mario, V., et al. (2016). Infrastructure cost comparison of running web applications in the cloud using AWS lambda and monolithic and microservice architectures. In: IEEE/ACM international symposium on cluster, cloud and grid computing (CCGrid). IEEE (pp. 179–182).
Tamas, K., et al. (2019). MiCADO—Microservice-based cloud application-level dynamic orchestrator. Future Generation Computer Systems, 94, 937–946.
Kalliopi, K., & Bassiliades, N. (2019). StoRM: A social agent-based trust model for the internet of things adopting microservice architecture. Simulation Modelling Practice and Theory, 94, 286–302.
Kasun, I., et al. (2016). Microservices in pratice-key architectural concepts of an MSA. Wso2 White Paper 150.
Kapil, B., et al. (2017). Microservices-based software architecture and approaches. In IEEE Aerospace Conference. IEEE (pp. 1–8).
Hanieh, A., Liu, Y., et al. (2017). Online machine learning for cloud resource provisioning of microservice backend systems. In IEEE international conference on big data (big data). IEEE (pp. 2433–2441).
Konstantinos, T. (2019). Stream-MSA: A microservices’ methodology for the creation of short, fast-paced, stream processing pipelines. ICT Express, 5(2), 146–149.
Honglei, S., & Wei, Y. Z., (2009). The research on software metrics and software complexity metrics. In International forum on computer science-technology and applications, Chongqing (pp. 131–136).
Singh, Y., Kaur, A., & Suri, B. (2008). An empirical study of product metrics in software testing. In M. Iskander (Ed.), Innovative techniques in instruction technology, E-learning, E-assessment, and education (pp. 64–72.). Springer: Dordrecht.
Halstead, M. H. (1977). Elements of software science. New York: Elsevier.
McCabe, T. (1976). A complexity measure. IEEE Transactions on Software Engineering, 2, 308–320.
Kaur, A., Kaur, K., Pathak, K., et al. (2014). A proposed new model for maintainability index of open source software. In Proceedings of 3rd international conference on reliability, infocom technologies and optimization, Noida (pp. 1–6).
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Singh, N., Singh, D.P., Pant, B. et al. µBIGMSA-Microservice-Based Model for Big Data Knowledge Discovery: Thinking Beyond the Monoliths. Wireless Pers Commun 116, 2819–2833 (2021). https://doi.org/10.1007/s11277-020-07822-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11277-020-07822-0