MySQL Server Using InnoDB Compared with NDB Cluster MySQL 8.0. 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 NDB Cluster, but not all of them. In this section, we discuss and compare some characteristics of the  NDB  storage engine used by NDB 8.0 with  InnoDB  used in MySQL 8.0. The next few sections provide a technical comparison. In many instances, decisions about when and where to use NDB 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  back ends. NDB Cluster 8.0 uses a  mysqld  based on MySQL 8.0, including support for  InnoDB 1.1. While it is possible to use  InnoDB  tables with NDB Cluster, such tables are not clustered. It is also not possible to use programs or libraries from an NDB Cluster 8.0 distribution with MySQL Server 8.0, or the reverse. While it is also true that some types of common business applications can be run either on NDB Cluster or on MySQL Server (most likely using the  InnoDB  storage engine), there are some important architectural and implementation differences. Section 23.1.6.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 23.1.6.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 23.1.6.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 NDB Cluster. See Chapter 16,  Alternative Storage Engines , for additional information about MySQL storage engines. 23.1.6.1 Differences Between the NDB and InnoDB Storage Engines The  NDB  storage engine is implemented using a distributed, shared-nothing architecture, which causes it to behave differently from  InnoDB  in a number of ways. For those unaccustomed to working with  NDB , unexpected behaviors can arise due to its distributed nature with regard to transactions, foreign keys, table limits, and other characteristics. These are shown in the following table: Table 23.2 Differences between InnoDB and NDB storage engines Feature InnoDB  (MySQL 8.0) NDB  8.0 MySQL Server Version 8.0 8.0 InnoDB  Version InnoDB  8.0.25 InnoDB  8.0.25 NDB Cluster Version N/A NDB  8.0.26/8.0.26 Storage Limits 64TB 128TB Foreign Keys Yes Yes Transactions All standard types READ COMMITTED MVCC Yes No Data Compression Yes No (NDB checkpoint and backup files can be compressed) Large Row Support (> 14K) Supported for  VARBINARY , VARCHAR ,  BLOB , and  TEXT columns Supported for  BLOB  and  TEXT columns only (Using these types to store very large amounts of data can lower NDB performance) 3962