MariaDB Xpand and MariaDB Enterprise Server Compatibility
Xpand built from the ground up to be a distributed, shared-nothing database and does not have any source code from other projects in its code base. Any application that uses a MariaDB client or JDBC/ODBC drivers (e.g. Ruby on Rails or Hibernate) can connect to Xpand without issue and use standard MariaDB constructs to interact with Xpand.
Xpand has a different query planner and query plans may vary from those of MariaDB Enterprise Server. As part of your migration testing, we recommend reviewing query plans for slow queries to see if they might benefit from additional tuning. For additional information, see "
EXPLAINfor MariaDB Xpand".
Xpand executable comments are of the form
/*$ */. Xpand ignores other types of executable comments.
Xpand error codes do not match MariaDB Enterprise Server
Xpand implements a subset of MariaDB Enterprise Server's global variables, but behavior for those global variables may differ.
Number of Tables
Xpand supports a maximum of approximately 2,000 tables. The precise limit for your installation depends on the number and type of indexes.
Number of Columns
Xpand recommends that each table have no more than 200 columns (including system-defined hidden columns), as higher column counts can impact performance and scalability.
In Xpand, the maximum row size for persistent tables (stored on disk) is 64MB. The maximum row size when using RBR replication is 32MB.
On Xpand, object name comparisons are case insensitive and table names are stored in the case specified in the
CREATE statement. The lower_
The following are reserved keywords for Xpand but not MariaDB Enterprise Server:
Xpand is a clustered, distributed database built from the ground up for scale, concurrency, and performance as well as ease of use. While Xpand seeks to be compatible with MariaDB Enterprise Server, it contains no actual MariaDB Server or MySQL source code.
Here is more on Xpand internals: