To cope with the rapid advancements in information technologies, many database systems have been developed in the last decade to satisfy various data storage requirements, such as NoSQL databases. In many cases, using a single database system cannot be an option because of the limitations posed on the functionalities of the software application. Therefore, applications may use multiple distributed storage databases that complement each other to satisfy the conflicting requirements. Such applications that are called polyglot persistent applications. However, the practical implementation of polyglot persistence and its complexities have not been studied enough. In this paper, the most recent studies related to polyglot persistence are reviewed. Database systems are classified based on their data storage model, and their use cases are discussed. The principles of polyglot persistence and its challenges are expounded. The implementation architectures of polyglot persistence applications are categorized into Application-coordinated Polyglot Persistence, Service-oriented Polyglot Persistence, Polyglot-Persistence-as-a-Service, and Multi-models Databases. An analysis of the issues related to each architecture is presented. In light of the study findings, a practical polyglot persistence implantation strategy is proposed. The outcomes of this work can help design future polyglot persistence applications and influence future research on how to resolve the complexity involved in polyglot persistence solutions.
|Number of pages||11|
|Journal||International Journal of Advanced Computer Science and Applications|
|State||Published - 2022|
Bibliographical noteFunding Information:
The authors would like to thank King Fahd University of Petroleum and Minerals for the support and facilities provided to perform this research.
© 2022. International Journal of Advanced Computer Science and Applications. All Rights Reserved.
- Database architecture
- Database system
- Distributed storage
- Multi-model database
- Relational database
ASJC Scopus subject areas
- Computer Science (all)