Spec-Zone .ru
спецификации, руководства, описания, API
|
MySQL Server offers a number of choices in storage engines. Since both NDBCLUSTER
and InnoDB
can serve as transactional MySQL storage engines, users of MySQL Server sometimes become interested in MySQL
Cluster. They see NDB
as a possible alternative or upgrade to the default InnoDB
storage engine in MySQL 5.6. While NDB
and InnoDB
share common characteristics, there are differences in architecture and implementation, so that some existing
MySQL Server applications and usage scenarios can be a good fit for MySQL Cluster, but not all of them.
In this section, we discuss and compare some characteristics of the NDB
storage engine used by MySQL Cluster NDB 7.3 with InnoDB
used in MySQL 5.6. The next few sections provide a technical comparison.
In many instances, decisions about when and where to use MySQL Cluster must be made on a case-by-case basis,
taking all factors into consideration. While it is beyond the scope of this documentation to provide specifics
for every conceivable usage scenario, we also attempt to offer some very general guidance on the relative
suitability of some common types of applications for NDB
as opposed to InnoDB
backends.
MySQL Cluster NDB 7.3 uses a mysqld based on MySQL 5.6, including support for InnoDB
1.1. While it is possible to use InnoDB
tables with MySQL Cluster, such tables are not clustered. It is also not possible to use programs or libraries
from a MySQL Cluster NDB 7.3 distribution with MySQL Server 5.6, or the reverse.
While it is also true that some types of common business applications can be run either on MySQL Cluster or on
MySQL Server (most likely using the InnoDB
storage engine), there are some important architectural and
implementation differences. Section
17.1.5.1, "Differences Between the NDB
and InnoDB
Storage Engines", provides a summary of the these differences. Due to the differences, some usage
scenarios are clearly more suitable for one engine or the other; see Section
17.1.5.2, "NDB
and InnoDB
Workloads". This in
turn has an impact on the types of applications that better suited for use with NDB
or InnoDB
.
See Section 17.1.5.3, "NDB
and InnoDB
Feature Usage Summary", for a
comparison of the relative suitability of each for use in common types of database applications.
For information about the relative characteristics of the NDB
and MEMORY
storage engines, see When
to Use MEMORY
or MySQL Cluster.
See Chapter 14, Storage Engines, for additional information about MySQL storage engines.