MySQL 可插拔存储引擎架构使数据库专业人员能够为特定的应用需求选择专门的存储引擎,同时完全无需处理任何特定的应用程序编码要求。MySQL 服务器架构将应用程序开发人员和数据库管理员与存储层的所有底层实现细节隔离开来,提供一致且易于使用的应用模型和 API。因此,尽管不同存储引擎具有不同的功能,但应用程序可以屏蔽这些差异。The MySQL pluggable storage engine architecture enables a database professional to select a specialized storage engine for a particular application need while being completely shielded from the need to manage any specific application coding requirements. The MySQL server architecture isolates the application programmer and DBA from all of the low-level implementation details at the storage level, providing a consistent and easy application model and API. Thus, although there are different capabilities across different storage engines, the application is shielded from these differences.
MySQL 可插拔存储引擎架构如图 18.3,“MySQL 架构与可插拔存储引擎”所示。The MySQL pluggable storage engine architecture is shown in Figure 18.3, “MySQL Architecture with Pluggable Storage Engines”.
可插拔存储引擎架构提供了一组在所有底层存储引擎之间通用的管理和支持服务。存储引擎本身是数据库服务器的组成部分,实际上执行在物理服务器级别维护的底层数据的操作。The pluggable storage engine architecture provides a standard set of management and support services that are common among all underlying storage engines. The storage engines themselves are the components of the database server that actually perform actions on the underlying data that is maintained at the physical server level.
这种高效且模块化的架构为那些希望专门针对特定应用需求(如数据仓库、事务处理或高可用性场景)的人提供了巨大的好处,同时还享有使用一套独立于任何单一存储引擎的接口和服务的优势。This efficient and modular architecture provides huge benefits for those wishing to specifically target a particular application need—such as data warehousing, transaction processing, or high availability situations—while enjoying the advantage of utilizing a set of interfaces and services that are independent of any one storage engine.
应用程序员和数据库管理员通过位于存储引擎之上的连接器 API 和服务层与 MySQL 数据库交互。如果应用程序的更改带来了需要更改底层存储引擎,或者需要添加一个或多个存储引擎以支持新的需求的要求,则不需要进行重大编码或流程更改即可使系统正常工作。MySQL 服务器架构通过提供一致且易于使用的 API 来屏蔽应用程序与底层存储引擎的复杂性,该 API 适用于所有存储引擎。The application programmer and DBA interact with the MySQL database through Connector APIs and service layers that are above the storage engines. If application changes bring about requirements that demand the underlying storage engine change, or that one or more storage engines be added to support new needs, no significant coding or process changes are required to make things work. The MySQL server architecture shields the application from the underlying complexity of the storage engine by presenting a consistent and easy-to-use API that applies across storage engines.
