Deploy Xpand Performance Topology

This procedure describes deployment of the Xpand Performance topology.

The goal of the Xpand Performance topology is to deliver maximum throughput and lowest latency. Alternatively, Xpand can be implemented as a storage engine with MariaDB Enterprise Server to maximize compatibility with MariaDB while gaining capabilities like Windows functions, CTEs, and cross-engine JOINs.

This procedure has 6 steps which are executed in sequence.

This page provides an overview of the topology, requirements, and deployment procedure.

Please read and understand this procedure before executing.

License

A license key is required to use MariaDB Xpand.

Obtain an MariaDB Xpand license key:

  • Users who want to try MariaDB Xpand with a 45-day non-production trial can obtain a license key on the Xpand trial page.

  • Existing MariaDB Platform customers with an Xpand license for production use can obtain their license key from MariaDB Sales.

Support

Support for this procedure is available in the MariaDB Xpand forum.

Production customers can obtain support in the MariaDB Xpand forum or by submitting a support case.

Components

The following components are deployed during this procedure:

Component

Function

MariaDB MaxScale 2.5

An advanced database proxy, firewall, and query router.

MariaDB Xpand 5.3

Distributed SQL with fault tolerance, write scaling, and horizontal scale-out for transactional workloads.

Topology

  • Applications connect to MaxScale.

  • MaxScale routes to three or more Xpand nodes.

  • Xpand nodes interconnect.

Xpand Performance Topology

For additional information, see "MariaDB Xpand Topologies".

MariaDB products can be deployed in many different topologies. The topology on this page is representative of basic product capabilities. MariaDB products can be deployed to form other topologies, leverage advanced product capabilities, or combine the capabilities of multiple topologies.

Requirements

These requirements are for the Xpand Performance topology when deployed with MariaDB MaxScale 2.5 and MariaDB Xpand 5.3.

Node Count

  • A dedicated MaxScale node

  • An odd count of three or more dedicated Xpand nodes

Production Xpand license keys define the maximum number of Xpand nodes which can be deployed.

Node Sizing

Resource

MaxScale Node

Xpand Nodes

CPU Cores

8+

8-32

Memory

16 GiB

64 GiB

Production Xpand license keys define the maximum number of CPU cores which can be deployed.

When deploying Xpand nodes on Amazon AWS EC2, the C3, I2, I3, R3, X1, and X1E instance types are supported. For additional information, see "MariaDB Xpand Compatibility with Amazon AWS EC2 Instance Types".

Operating System

This procedure covers deployment on:

  • CentOS Linux 7

  • Red Hat Enterprise Linux 7 (RHEL 7)

For additional information, see "MaxScale Compatibility with Operating Systems" and "MariaDB Xpand Compatibility with Operating Systems".

Storage Considerations

Xpand requires the /data/clustrix directory to reside on the ext4 file system.

Each Xpand node should have 20+ GiB of SSD storage.

System User Accounts

By default, Xpand and MaxScale use the following OS user accounts. These accounts are created during the installation process:

User Account

Purpose

maxscale

MaxScale process owner

xpand

Xpand process owner

xpandm

Used for administrative tasks, such as running the clx command

For additional information, see "MariaDB Xpand System User Accounts".

Quick Reference

MaxScale Configuration Management

MaxScale can be configured using several methods. These methods make use of MaxScale's REST API.

Method

Benefits

MaxCtrl

  • MaxCtrl is a command-line utility that can perform administrative tasks.

  • It supports many different commands.

  • See MaxCtrl Commands in 2.5 for a list of commands.

MaxGUI

  • MaxGUI is a graphical utility that can perform administrative tasks.

  • It was introduced in MaxScale 2.5.

REST API

  • The REST API can be used directly.

  • For example, the curl utility could be used to make REST API calls from the command-line.

  • Many programming languages also have libraries to interact with REST APIs.

This procedure uses MaxCtrl. Alternatively, MaxGUI or direct REST API access could be used.

MaxScale Service Management

The systemctl command is used to start and stop the MaxScale service.

Operation

Command

Status

systemctl status maxscale

Start

systemctl start maxscale

Stop

systemctl stop maxscale

Restart

systemctl restart maxscale

Enable startup

systemctl enable maxscale

Disable startup

systemctl disable maxscale

View systemd journal

journalctl -u maxscale

Xpand Service Management

The clx command is used to start and stop the Xpand service.

This command is usually executed as the xpandm system user account. For additional information, see "MariaDB Xpand System User Accounts".

Operation

Command

Status

clx status

Start

clx dbstart

Stop

clx dbstop

Restart

clx dbrestart

Next Step

Navigation in the Xpand Performance topology deployment procedure:

Support

Support for this procedure is available in the MariaDB Xpand forum. Production customers can obtain support in the MariaDB Xpand forum or by submitting a support case.