Understanding the WordPress database
Typical full stack web development frameworks don't come with a predefined database structure. Instead, these frameworks focus on the core foundation of an application while allowing the developers to focus on the application-specific features. On the other hand, WordPress provides a preplanned database structure with a fixed set of tables. WordPress is built to function as a content management system, and therefore it can be classified as a product rather than a pure development framework. The WordPress core database is designed to power the generic functionalities of a CMS. Therefore, it's our responsibility to use our skills to make it work as an application development framework.
The WordPress database is intended to work with MySQL, and therefore we need to have a MySQL database set up before installing WordPress. On successful installation, WordPress will create 11 database tables to cater for the core functionality with the default MySQL table engine.
WordPress' core features will always be limited to these 11 tables, and it's quite surprising to see the flexibility of building a wide range of applications with such a limited number of tables. Both WordPress and framework developers need to have a thorough understanding of the existing tables in order to use them in web applications.