微服务中的数据管理:实践现状、挑战和研究方向
Data Management in Microservices: State of the Practice, Challenges, and Research Directions
摘要:
微服务已经成为数据驱动应用程序的流行架构风格,因为它们能够在功能上将应用程序分解为小型和自治的服务,以实现数据库系统的可扩展性,强隔离性和针对每个服务的工作负载和数据格式的专业化。尽管这种架构风格在工业上的采用正在加速,但缺乏对实践状态和从业者在微服务中面临的数据管理挑战的调查。为了弥合这一差距,我们对报告采用微服务的代表性文章进行了系统的文献综述,我们分析了一组流行的开源微服务应用程序,并进行了一项在线调查,以交叉验证前面步骤的结果与120多位经验丰富的从业者和研究人员的看法和经验。通过这个过程,我们能够对微服务中数据管理的实践状态进行分类,并观察到几个无法单独通过软件工程实践解决的基本挑战,而是需要系统级支持来减轻从业者的负担。我们讨论了最先进的数据库系统在微服务方面的缺点,最后我们为面向微服务的数据库系统设计了一组功能。
英文摘要:
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.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。