[MCOL-4396] MariaDB X5 10.5.6 takes a very long time to load data compared to ColumnStore 1.2.5 Created: 2020-11-18  Updated: 2023-07-05

Status: Open
Project: MariaDB ColumnStore
Component/s: None
Affects Version/s: None
Fix Version/s: Icebox

Type: Bug Priority: Major
Reporter: David Hill (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None


 Description   

From Customer:

New cluster created
Server version: 10.5.6-4-MariaDB-enterprise-log
MaxScale version: 2.5.5
Columnstore_version: 5.4.3
It still takes a long time to load data, no change
We have always made all the tables columnstore tables.
With recent versions we have had the ability to make all of the tables copied from the UI database InnoDB tables, and only make the summary tables Columnstore tables. This would make this cluster more comparable to the setup in Redshift where the UI tables are all installed as reference tables, so they appear in their entirety on each node in the cluster. In that configuration the sample table provided loads in about 1 sec on Redshift, about 2 sec on CS 1.1.6 using the columnstore engine and far faster than X5's 23 sec using the columnstore engine.
If we were to do this, the CrossEngine Join feature would be used for multiple tables in almost every query of a table using the columnstore engine. Where as in the past the CrossEngine Join feature was only used occasionally.

What is your opinion on changing to this alternate table engine configuration?

Do you think using the CrossEngine Join feature on 8 to 18 tables (or more) in a single query would be problematic?

I take it all of those CrossEngine joins would be processed on pm1.

Is there any hope that X5 using the columnstore engine can get its load data times back down in the 2 sec range for the the sample table provided?

A side effect of this new configuration would be that the convert_tz function would be working to create the view on an InnoDB table instead of a Columnstore table.



 Comments   
Comment by David Hill (Inactive) [ 2020-11-18 ]

As an example, the table described below took 2 seconds to create and load 188 records on ColumnStore 1.2.5 and 23 seconds on MariaDB X5 10.5.6 Both tests used LOAD DATA LOCAL INFILE statements. That indicates our ETL process will take 11x longer to complete on MariaDB X5. This is a serious performance issue.
CREATE TABLE `areas` (
`id` int(11) NOT NULL,
`name` varchar(255) NOT NULL,
`deleted_at` datetime DEFAULT NULL,
`created_at` datetime DEFAULT NULL,
`updated_at` datetime DEFAULT NULL,
`lock_version` int(11) NOT NULL DEFAULT 0
) ENGINE=Columnstore DEFAULT CHARSET=utf8;

The table definition is the same on both systems.
The same data was loaded into each table.

> select count from areas;
----------

count

----------

188

----------

The ColumnStore cluster has 1 um and 2 pm nodes. The MariaDB X5 system has 3 nodes running MaxScale in front of the pm's.

Generated at Thu Feb 08 02:50:02 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.