MaxScale Use Cases

Overview

MariaDB MaxScale is a database proxy that extends the high availability, scalability, and security of MariaDB Server while at the same time simplifying application development by decoupling it from underlying database infrastructure.

Term Definitions

Term

Definition

Database Proxy

A server that acts as an intermediary between the client and the database servers, so that the client is not affected by server failures and topology changes.

Load balancing

The act of sending queries to different database servers, so that a single database server does not have to handle all of the load.

Failover

The act of configuring a new server to be the primary server when the existing primary fails.

Switchover

The act of configuring a new server to be the primary server when the operator wants to perform maintenance on the existing primary.

Causal Consistency

The act of ensuring that interdependent operations maintain consistency by performing the interdependent operations in the same order on all servers.

Causal Reads

The act of ensuring causal consistency for read queries by ensuring that all previously committed write queries are applied prior to executing the read query.

When to Use MaxScale

MaxScale is used for different purposes in different kinds of deployments.

MariaDB Replication

In MariaDB ReplicationMariaDB Replication deployments, MaxScale can be used to:

Galera Cluster

In Galera ClusterGalera Cluster deployments, MaxScale can be used to:

Multi-Node Enterprise ColumnStore

In Multi-Node Enterprise ColumnStoreMulti-Node Enterprise ColumnStore deployments, MaxScale can be used to:

HTAP

In Hybrid Transactional-Analytical Processing (HTAP)Hybrid Transactional-Analytical Processing (HTAP) deployments, MaxScale can be used to:

  • Receive binary logs containing transactional data.

  • Filter binary logs, so that events containing transactional data can be duplicated against the analytical ColumnStore databases.