- Система: Ubuntu 18 — SSD
- Версия ColumnStore MariaDB: 1.2.5
- Строки таблицы: 3
Если сравнить операцию создания таблицы с операцией, выполненной InnoDB перед ColumnStore, InnoDB работает в X раз быстрее, чем ColumnStore.
Я выполнил CREATE TABLE с INSERT AS SELECT, используя движок ColumnStore. Результаты Очень медленно. Это последовательность:
DROP table IF EXISTS example;
CREATE TABLE IF NOT EXISTS example
(num INT(11),meta DECIMAL(14,4),min INT(11),max INT(11))
ENGINE=columnstore;
INSERT INTO example
(num, meta, min, max)
AS SELECT num, meta, min, max FROM old_example;
-- TIME TO EXECUTE
-- On row affected, taking 2.8s
Теперь взгляните на то, как я работал с InnoDB.
DROP table IF EXISTS example;
CREATE TABLE IF NOT EXISTS example
(num INT(11),meta DECIMAL(14,4),min INT(11),max INT(11))
(SELECT num, meta, min, max FROM old_example);
-- TIME TO EXECUTE
-- On row affected, taking 103ms
Обратите внимание 1: я знаю, что в первой я выполняю еще одну операцию, и она отличается, но я провел трассировку, выполняя каждый из разделенных запросов, и обнаружил, что CREATE TABLE с ENGINE=ColumnStore — это то, что занимает так много времени. Обратите внимание 2: столбцовый магазин MariaDB теперь имеет операцию CREATE AS SELECT. а>.
В связи с этим есть несколько вопросов:
Вопрос 1. Есть ли какая-то конфигурация MariaDB ColumnStore, которую я могу сделать, чтобы сделать возможной операцию создания таблицы, а затем вставлять данные из другой таблицы быстрее? Вопрос 2: работает ли ColumnStore MariaDB быстрее только для выбора?
create table
много раз - person calebeaires   schedule 19.04.2020