MySQL and Apache CouchDB: Comparative analysis of relational and NoSQL database management systems
DOI:
https://doi.org/10.83179/qds28745Keywords:
MySQL, CouchDB, relational databases, NoSQLAbstract
This article presents a comparative analysis between MySQL 8.x, the world’s most widely adopted relational database management system, and Apache CouchDB 3.x, a JSON-based NoSQL document-oriented database engine. The objective is to provide a detailed technical reference covering the main aspects of both systems: internal architecture, data model, query language, concurrency mechanisms (MVCC), security, backup, replication, scalability, maintenance, and ideal use cases. The novelty of this work lies in the integration of an exhaustive comparative technical analysis of these two contrasting paradigms within the Colombian academic context, complemented by practical CRUD operation examples and a structured comparison table. The methodology is documentary-comparative in nature: primary sources (official MySQL and CouchDB documentation), specialized academic literature, and published performance studies were reviewed, articulating findings in a systematic comparative framework. Results indicate that MySQL excels in transactional environments with highly structured data, guaranteeing multi-row ACID consistency, while CouchDB offers significant advantages in high-distribution scenarios, offline synchronization and dynamic schemas, prioritizing availability and eventual consistency. The choice between both engines depends on problem type, data volume, consistency requirements and system architecture, and does not constitute a relationship of superiority but of contextual suitability.
Downloads
References
- Apache Software Foundation (2023). Apache CouchDB 3.3 documentation. https://docs.couchdb.org/en/stable/
- Brewer, E. A. (2000). Towards robust distributed systems (p. 7). Proceedings of the 19th Annual ACM Symposium on Principles of Distributed Computing (PODC), 7.
- Chickerur, S., Goudar, A., & Kinnerkar, A. (2015). Comparison of relational database with document-oriented database (MongoDB) for big data applications (pp. 41-47). 2015 8th International Conference on Advanced Software Engineering & Its Applications.
- Codd, E. F. (1970). A relational model of data for large shared data banks. Communications of the ACM, 13(6), 377-387. https://doi.org/10.1145/362384.362685
- Date, C. J. (2004). An introduction to database systems (8th ed.). Addison-Wesley.
- DB-Engines (2025). DB-Engines ranking. https://db-engines.com/en/ranking
- Fowler, M., & Sadalage, P. J. (2013). NoSQL distilled: A brief guide to the emerging world of polyglot persistence. Addison-Wesley.
- GeeksforGeeks (2023). Difference between CouchDB and MySQL. https://www.geeksforgeeks.org/difference-between-couchdb-and-mysql/
- IBM (2024a). SQL vs. NoSQL databases: What's the difference? IBM Think. https://www.ibm.com/think/topics/sql-vs-nosql
- IBM (2024b). What is CouchDB? IBM Think. https://www.ibm.com/think/topics/couchdb
- Kaur, K., & Rani, R. (2013). Modeling and querying data in NoSQL databases (pp. 1-7). 2013 IEEE International Conference on Big Data.
- Lennardt, J. (2014). Apache CouchDB: The definitive introduction. InfoQ. https://www.infoq.com/articles/apache-couchdb-the-definitive-introduction/
- MySQL AB (1995). MySQL reference manual – History of MySQL. https://dev.mysql.com/doc/refman/8.0/en/history.html
- Oracle Corporation (2023). MySQL 8.0 reference manual – InnoDB multi-versioning. https://dev.mysql.com/doc/refman/8.0/en/innodb-multi-versioning.html
- Patil, M., Sonsale, A., & Kamble, A. (2020). Performance analysis of NoSQL and relational databases with CouchDB and MySQL for application's data storage. Applied Sciences, 10(23), 8524. https://doi.org/10.3390/app10238524
- Pokorny, J. (2013). NoSQL databases: A step to database scalability in web environment. International Journal of Web Information Systems, 9(1), 69-82.
- Schwartz, B., Zaitsev, P., & Tkachenko, V. (2012). High performance MySQL (3rd ed.). O'Reilly Media.
- Wikipedia (2025a). Apache CouchDB. https://en.wikipedia.org/wiki/Apache_CouchDB
- Wikipedia (2025b). MySQL. https://es.wikipedia.org/wiki/MySQL
