Deploy HTAP Topology with MariaDB Enterprise Server 10.5
This page is part of MariaDB's Documentation.
The parent of this page is: Deploy HTAP Topology
Topics on this page:
Overview
This procedure describes the deployment of the HTAP topology with MariaDB Enterprise Server 10.5 and MariaDB Enterprise ColumnStore 5.
MariaDB Enterprise ColumnStore 5 is a columnar storage engine for MariaDB Enterprise Server 10.5. This topology is best suited for Hybrid Transactional-Analytical Processing (HTAP) workloads.
This procedure has 4 steps, which are executed in sequence.
This procedure represents the basic product capability and uses 1 Enterprise ColumnStore node.
This page provides an overview of the topology, requirements, and deployment procedures.
Please read and understand this procedure before executing.
Procedure Steps
Step | Description |
---|---|
Step 1 | |
Step 2 | |
Step 3 | |
Step 4 |
Support
Customers can obtain support by submitting a support case.
Components
The following components are deployed during this procedure:
Component | Function |
---|---|
Modern SQL RDBMS with high availability, pluggable storage engines, hot online backups, and audit logging. |
MariaDB Enterprise Server Components
Component | Description |
---|---|
| |
|
Topology
The MariaDB Enterprise ColumnStore HTAP topology is designed for hybrid transactional-analytical processing (HTAP) workloads.
The topology consists of:
One MaxScale node
One ColumnStore node running ES and Enterprise ColumnStore
The MaxScale node:
Monitors the health and availability of the ColumnStore node using the MariaDB Monitor (mariadbmon)
Accepts client and application connections
Routes queries to the ColumnStore node using the Read/Write Split Router (readwritesplit)
The ColumnStore node:
Receives queries from MaxScale
Executes queries
Uses a row-based storage engine, such as InnoDB to handle transactional queries
Uses Enterprise ColumnStore as the columnar storage engine to handle analytical queries
Uses cross-engine JOINs to join transactional and analytical tables
Replicates data between engines using MariaDB Replication
Optionally uses S3-compatible object storage for Enterprise ColumnStore data
Requirements
These requirements are for the HTAP topology when deployed with MariaDB Enterprise Server 10.5 and MariaDB Enterprise ColumnStore 5.
Operating System
In alignment to the enterprise lifecycle, the HTAP topology with MariaDB Enterprise Server 10.5 and MariaDB Enterprise ColumnStore 5 is provided for:
CentOS Linux 7 (x86_
64) Debian 10 (x86_
64) Red Hat Enterprise Linux 7 (x86_
64) Red Hat Enterprise Linux 8 (x86_
64) Ubuntu 18.04 LTS (x86_
64) Ubuntu 20.04 LTS (x86_
64)
S3-Compatible Object Storage Option
The HTAP topology can use S3-compatible object storage to store ColumnStore data, but it is not required.
Many S3-compatible object storage services exist. MariaDB Corporation cannot make guarantees about all S3-compatible object storage services, because different services provide different functionality.
For the preferred S3-compatible object storage providers that provide cloud and hardware solutions, see the following sections:
The use of non-cloud and non-hardware providers is at your own risk.
If you have any questions about using specific S3-compatible object storage with MariaDB Enterprise ColumnStore, contact us.
Preferred Object Storage Providers: Cloud
Amazon Web Services (AWS) S3
Google Cloud Storage
Azure Storage
Alibaba Cloud Object Storage Service
Preferred Object Storage Providers: Hardware
Cloudian HyperStore
Dell EMC
Seagate Lyve Rack
Quantum ActiveScale
IBM Cloud Object Storage
Limitations
Cross-Database Queries
This implementation relies on replicate_
For example, if the replicated database is selected by the USE, then the query will replicate properly:
USE innodb_db;
INSERT INTO htap_test1
VALUES (100);
SELECT * FROM columnstore_db.htap_test1;
+------+
| id |
+------+
| 100 |
+------+
However, if the replicated database is not selected, and it is instead prefixed the table name in the query, then the query will not replicate properly:
USE columnstore_db;
INSERT INTO innodb_db.htap_test1
VALUES (200);
SELECT * FROM columnstore_db.htap_test1;
+------+
| id |
+------+
| 100 |
+------+
Semi-Synchronous Replication
This implementation has not been tested with semi-synchronous replication.
Parallel Replication
This implementation has not been tested with parallel replication.
Row-Based Replication
This implementation requires the binlog_STATEMENT
. Row-based replication is not currently supported.
Quick Reference
MariaDB Enterprise Server Configuration Management
Method | Description |
---|---|
Configuration File | Configuration files (such as |
Command-line | The server can be started with command-line options that set system-variables and options. |
SQL | Users can set system-variables that support dynamic changes on-the-fly using the SET statement. |
MariaDB Enterprise Server packages are configured to read configuration files from different paths, depending on the operating system. Making custom changes to Enterprise Server default configuration files is not recommended because custom changes may be overwritten by other default configuration files that are loaded later.
To ensure that your custom changes will be read last, create a custom configuration file with the z-
prefix in one of the include directories.
Distribution | Example Configuration File Path |
---|---|
|
|
|
|
MariaDB Enterprise Server Service Management
The systemctl
command is used to start and stop the MariaDB Enterprise Server service.
Operation | Command |
Start |
|
Stop |
|
Restart |
|
Enable during startup |
|
Disable during startup |
|
Status |
|
For additional information, see "Start and Stop Services".
MariaDB Enterprise Server Logs
MariaDB Enterprise Server produces log data that can be helpful in problem diagnosis.
Log filenames and locations may be overridden in the server configuration. The default location of logs is the data directory. The data directory is specified by the datadir system variable.
Log | System Variable/Option | Default Filename |
| ||
MariaDB Enterprise Audit Log |
| |
Slow Query Log |
| |
General Query Log |
| |
|
Enterprise ColumnStore Service Management
The systemctl
command is used to start and stop the ColumnStore service.
Operation | Command |
Start |
|
Stop |
|
Restart |
|
Enable during startup |
|
Disable during startup |
|
Status |
|
Next Step
Navigation in the procedure "Deploy HTAP Topology":