rapid引擎在greatsql数据库中是特色属性之一,可以大大提高数据查询效率,在OLAP场景中应用很广泛,特别是在报表系统中。greatsql数据库将要推出的新版本数据库 8.0.32-26,在这个新版本中,rapid引擎在HTAP场景中也有不少用武之地。
要想使用rapid引擎,必须要主引擎是innodb引擎。用户要手动把主引擎表的数据导入rapid引擎表,后期用户可以手工增量导入主引擎表的变更数据。
1、我们先新建一个表,主引擎是innodb引擎,辅助引擎是rapid引擎。(前提是数据库已经安装rapid引擎组件,这个社区文档有详细介绍。)
mysql> create table mytest (id int) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci SECONDARY_ENGINE=rapid;
Query OK, 0 rows affected (0.76 sec)
mysql> show create table mytest;
+--------+-------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+--------+-------------------------------------------------------------------------------------------------------------------------------------------+
| mytest | CREATE TABLE `mytest` (
`id` int DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci SECONDARY_ENGINE=rapid |
2、我们插入一些测试数据。如图所示
3、
我们在删除表数据时,系统报错。意思该表上第二引擎的定义语句,不能删除。
4、我们现在制裁第二引擎,alter table mytest secondary_engine=NULL
这是可以正常删除数据了。
查看表定义
mysql> show create table mytest;
+--------+----------------------------------------------------------------------------------- ---------------------------------+
| Table | Create Table |
+--------+----------------------------------------------------------------------------------- ---------------------------------+
| mytest | CREATE TABLE `mytest` (
`id` int DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |
+--------+----------------------------------------------------------------------------------- ---------------------------------+
1 row in set (0.00 sec)
表上原来的第二引擎没有了