Data management in microservices: State of the practice, challenges, and research directions

R Laigner, Y Zhou, MAV Salles, Y Liu… - arXiv preprint arXiv …, 2021 - arxiv.org
arXiv preprint arXiv:2103.00170, 2021arxiv.org
Microservices have become a popular architectural style for data-driven applications, given
their ability to functionally decompose an application into small and autonomous services to
achieve scalability, strong isolation, and specialization of database systems to the workloads
and data formats of each service. Despite the accelerating industrial adoption of this
architectural style, an investigation of the state of the practice and challenges practitioners
face regarding data management in microservices is lacking. To bridge this gap, we …
Microservices have become a popular architectural style for data-driven applications, given their ability to functionally decompose an application into small and autonomous services to achieve scalability, strong isolation, and specialization of database systems to the workloads and data formats of each service. Despite the accelerating industrial adoption of this architectural style, an investigation of the state of the practice and challenges practitioners face regarding data management in microservices is lacking. To bridge this gap, we conducted a systematic literature review of representative articles reporting the adoption of microservices, we analyzed a set of popular open-source microservice applications, and we conducted an online survey to cross-validate the findings of the previous steps with the perceptions and experiences of over 120 experienced practitioners and researchers. Through this process, we were able to categorize the state of practice of data management in microservices and observe several foundational challenges that cannot be solved by software engineering practices alone, but rather require system-level support to alleviate the burden imposed on practitioners. We discuss the shortcomings of state-of-the-art database systems regarding microservices and we conclude by devising a set of features for microservice-oriented database systems.
arxiv.org