ColumnStore Storage Engine Overview
Contents
Overview
MariaDB Enterprise ColumnStore integrates with MariaDB Enterprise Server using the ColumnStore storage engine plugin. The ColumnStore storage engine plugin enables MariaDB Enterprise Server to interact with ColumnStore tables.
For deployment instructions and available documentation, see "MariaDB Enterprise ColumnStore".
Feature Summary The ColumnStore storage engine has the following features:
Feature | Detail | Resources |
---|---|---|
Storage Engine | ColumnStore | |
Availability | ES 10.5+, CS 10.5+ | MariaDB Enterprise Server |
Workload Optimization | OLAP and Hybrid | OLAP Workloads Hybrid Workloads |
Table Orientation | Columnar | Columnar Storage Engine |
ACID-compliant | Yes | |
Indexes | Unnecessary | Extent Elimination |
Compression | Yes | Compression |
High Availability (HA) | Yes | High Availability and Failover |
Main Memory Caching | Yes | |
Transaction Logging | Yes | Version Buffer |
Garbage Collection | Yes | Version Buffer |
Online Schema changes | Yes | Online Schema Changes |
Non-locking Reads | Yes | Lockless Reads |
Examples
Creating a ColumnStore Table
To create a ColumnStore table, use the CREATE TABLE statement with the ENGINE=ColumnStore
option:
CREATE DATABASE columnstore_db; CREATE TABLE columnstore_db.analytics_test ( id INT, str VARCHAR(50) ) ENGINE = ColumnStore;
Multi-Node Configuration
To deploy a multi-node Enterprise ColumnStore deployment, a configuration similar to below is required:
[mariadb] log_error = mariadbd.err character_set_server = utf8 collation_server = utf8_general_ci log_bin = mariadb-bin log_bin_index = mariadb-bin.index relay_log = mariadb-relay relay_log_index = mariadb-relay.index log_slave_updates = ON gtid_strict_mode = ON # This must be unique on each cluster node server_id = 1
Configure the Mandatory Utility User Account
To configure the mandatory utility user account, use the mcsSetConfig command:
$ sudo mcsSetConfig CrossEngineSupport Host 127.0.0.1 $ sudo mcsSetConfig CrossEngineSupport Port 3306 $ sudo mcsSetConfig CrossEngineSupport User cross_engine $ sudo mcsSetConfig CrossEngineSupport Password cross_engine_passwd
Content reproduced on this site is the property of its respective owners,
and this content is not reviewed in advance by MariaDB. The views, information and opinions
expressed by this content do not necessarily represent those of MariaDB or any other party.