statements or translates the client commands written in programming languages
like Perl or C++ into SQL statements. The embedded DML precompiler is
responsible for translating requests into a format that MySQL understands.
The
Query Processor
analyses the SQL statements from the embedded DML
precompiler or user interface, and creates a parse tree structure to validate the
SQL query syntax.
If the query is deemed to be valid, the Query Processor then performs the
security checking. It checks the access permissions and makes sure that tables
and records are accessed only by the authorized users.
After security checking, the query is analyzed and optimized in order to raise
performance of the query process. The MySQL optimizer uses the most
restrictive index first in order to eliminate as many rows as possible to proceed
with less restrictive index optimization.
The last step in query processing is the execution of the SQL statement in the
Execution Engine
.
Specific tasks such as repair, backup, and recovery, which
are started by the database administrator and processed from the DDL compiler
are executed in the execution engine.
Transaction management
The
Transaction Manager
is responsible for making sure that transactions are
logged and executed automatically in a safe and stable way. Resolving deadlock
situations and issuing the commit or roll back commands to ensure database
stability are done through the aid of the
Log Manager and Concurrency
Manager
.
The
Concurrency Control Manager
ensures that transactions are executed
separately and independently by acquiring locks from the locking table, on
appropriate data in the database from the Resource Manager. Once the lock is
acquired, only operations in one transaction can manipulate the data. If a
different transaction tries to manipulate the same data, the request is rejected by
the Concurrency Control Manager until the first transaction is complete.
Recovery management
The
Log Manager
is the module that is responsible for logging the operations
executed in the database. The log is stored on the disk. In case of a system
crash, executing each command in the log will bring the database back to its last
stable state. This is done by the
Recovery Manager
.
Resource Management
The Resource Management is responsible for memory allocation and retrieving
data from physical disks, and writing data to physical disks.
Chapter 1. Introduction
31
footer
Our partners:
PHP: Hypertext Preprocessor Cheap Web Hosting
JSP Web Hosting
Ontario Web Hosting
Jsp Web Hosting
Cheapest Web Hosting
Java Hosting
Cheapest Hosting
Visionwebhosting.net Business web hosting division of Vision Web Hosting Inc.. All rights reserved