Open Source MySQL Reference Architectures
The database architecture to be used varies depending on the service application scenario. This technical white paper describes only typical reference architectures. You can select the open-source database architecture based on service requirements. If a commercial database is used, the database vendor determines the architecture to be used and provides technical support.
Scenarios
MySQL is a typical
OLTP has the following characteristics:
- Data generated in the system
- Transaction-based processing system
- Small amount of data involved in each transaction
- Short response time
- Large user populations, especially operators
- Index-based database operations
Architectures and Principles
Figure 1 shows the MySQL architecture.
Table 1 describes the MySQL components.
|
Component |
Description |
|---|---|
|
Connectors |
Interact with SQL statements in other programming languages, such as PHP and Java. |
|
Management services and utilities |
Implement system management and control. |
|
Connection pool |
Manages cache requirements such as user connections and thread processing. |
|
SQL interface |
Receives SQL commands from users and returns query results. For example, select from calls an SQL interface. |
|
Parser |
Verifies and parses the SQL commands received. Major functions of the parser are as follows:
|
|
Optimizer |
Determines the most efficient means for executing queries. The database selects the optimal plan from multiple execution plans generated, and returns the results as soon as possible. The optimizer uses the select-project-join (SPJ) strategy to query data. |
|
Caches and buffers |
If the data queried is found in the cache, the query statement reads the data from the cache. A cache consists of a series of sub-caches, such as table caches, record caches, key caches, and permission caches. |
|
Storage engines |
Interact with files. MySQL uses a pluggable storage engine architecture. It customizes the file access mechanism based on the abstract interface on the file access layer provided by MySQL AB. |
Typical Component Architectures
Figure 2 shows the MySQL reference architectures.
Common reference architectures include the following:
- Source-replica replication solution
- Linux Virtual Server (LVS) + keepalive + MySQL HA solution
- MaxScale read/write splitting and load balancing
When multiple instances are deployed or the distributed architecture is used, you are advised to bind multiple instances to CPUs on each server. This can improve resource utilization and the overall performance.

