What is MariaDB ColumnStore and How Does It Work?

Опубликовано: 09 Август 2024
на канале: Database Dive
97
2

This mariadb tutorial will tell you what MariaDB ColumnStore is and how it works.
This mariadb tutorial for beginners will tell you that MariaDB ColumnStore is a database storage engine specific to MariaDB Server that stores data using a column-oriented model.

MariaDB ColumnStore is designed for bigger data sets and it can be used as a storage engine starting from MariaDB 10.5.4.

This isn't any sql tutorial for dummies because this sql tutorial will also let you in on the fact that the engineering manager for MariaDB's ColumnStore is a person called Andrew Hutchings who has previously worked for NGINX, HP, SkySQL, Rackspace, and Sun/Oracle. Next, this SQL tutorial will dig into the facts.

The first fact about MariaDB ColumnStore is that it is column-oriented and massively parallel in that every single node within MariaDB Server scales up taking advantage of CPU power.

Secondly, column data within MariaDB ColumnStore is split into partitions that are stored in units called extents.
In MariaDB ColumnStore terms, an extent is a measure that stores each column in the table and once a single Extent is full, a new Extent is created.

Data must be imported into MariaDB ColumnStore with a utility called cpimport and MariaDB ColumnStore isn't available on a mysql server installation.
The cpimport utility accepts any file containing data separated by a delimiter and has a couple of working modes that can be used (default delimiter is "|", but other characters can be used too.)
If date values are stored in ColumnStore, they must be in an appropriate format too.

This MariaDB tutorial will also let you in on the fact that for data storage, MariaDB ColumnStore supports S3 and compatible services. However, MariaDB ColumnStore doesn't provide support for SQL indexes, primary keys, unique keys, or foreign keys meaning that referential integrity cannot be enforced. ColumnStore doesn't support generated columns, temporal tables, or character sets other than utf8mb3.

MariaDB ColumnStore also doesn't support hidden or invisible columns, and it doesn't support certain data types supported by other storage engines within MariaDB.

At the time this SQL tutorial is made, the maximum number of columns that MariaDB ColumnStore can support is around 2,000, with the exact number depending on a couple of factors. Also keep in mind that if we'll try to create a table running MariaDB ColumnStore with more than 2,000 columns, our MariaDB Server database will likely return an error saying that table definition is too large: Error Code: 1117. Table definition is too large.

Subscribe to this SQL tutorial channel to learn more about the capabilities of MariaDB ColumnStore, MariaDB Xpand, Galera Cluster, and other tools, and until next time.

Music:
Moonwalk by Jay Someday:   / jaysomeday  
Licensed under Creative Commons — Attribution 3.0 Unported — CC BY 3.0.
Free Download / Stream: https://tinyurl.com/ydfktbaa
Music promoted by Audio Library: https://tinyurl.com/3m5w8zt7

#mariadb #coding #data #database #programming #mysql #sql