Getting Started with MariaDB Xpand

MariaDB Enterprise Server 10.5 introduces MariaDB Xpand, which offers a new distributed database that provides scalability and high availability.

MariaDB Xpand uses the Xpand storage engine plugin to integrate with MariaDB Enterprise Server.

Term Definitions

Term

Definition

System

One running operating system. A system typically answers one or more IP addresses.

Service

One set of processes running on a system. A service typically answers one or more TCP port or UNIX socket. A service is typically started and stopped using systemd.

Process

One or more pid running on a system, associated with a service. A service may include one or more process. A process typically serves one or more TCP connection or socket connection.

Node

One service, or multiple services working in concert, on a system.

Deployment

One service, or more than one service connected by a multi-node technology. A deployment may operate on one system or multiple. A deployment may contain one node or multiple.

Plugin

A component of MariaDB Enterprise Server which may be included in the server function optionally, either at runtime or compile-time, and which adheres to an established plugin architecture within Enterprise Server.

Multi-Node

The case where multiple nodes exist in a deployment.

MariaDB Enterprise Server service

The MariaDB Enterprise Server service that runs on each node in a deployment.

MariaDB Xpand service

The MariaDB Xpand service that runs on each node in a deployment.

Xpand Deployment Process

  1. Deploy MariaDB Xpand

  2. On each node, connect to the MariaDB Enterprise Server service using MariaDB Client:

    $ sudo mariadb
    
  3. Use the CREATE DATABASE statement to create the database:

    CREATE DATABASE IF NOT EXISTS xpand_db;
    

    Note

    MariaDB Xpand does not synchronize databases automatically. MariaDB Replication can synchronize databases and other objects. Without replication, the database needs to be created separately on each node.

  4. Use the CREATE TABLE statement to create the table:

    CREATE TABLE xpand_db.xpand_tab (
       id INT PRIMARY KEY AUTO_INCREMENT,
       str VARCHAR(50)
    ) ENGINE = Xpand;