MySQL HeatWave 用户指南  / 第 2 章热浪  / 2.2 加载数据  /  2.2.2 手动加载数据

2.2.2 手动加载数据

手动加载数据涉及以下步骤:

  1. 排除具有不受支持的数据类型的列。请参阅 排除表列

  2. 定义RAPID为要加载的表的辅助引擎。请参阅 定义辅助引擎

  3. (可选)应用字符串列编码和数据放置工作负载优化。有关详细信息,请参阅第 2.7 节 “工作负载优化”

  4. ALTER TABLE ... SECONDARY_LOAD使用语句 加载表。请参阅 加载表

排除表列

在将表加载到 HeatWave 之前,必须排除数据类型不受支持的列;否则,无法加载表格。有关 HeatWave 支持的数据类型列表,请参阅 第 2.9 节,“支持的数据类型”

或者,您也可以排除与您打算运行的查询无关的列。不需要排除不相关的列,但这样做可以减少加载时间和存储表数据所需的内存量。

要排除列,请在or 语句中指定NOT SECONDARY列属性 ,如下所示。column 属性可防止在执行表加载操作时将列加载到 HeatWave 中 。ALTER TABLECREATE TABLENOT SECONDARY

mysql> ALTER TABLE orders MODIFY description BLOB NOT SECONDARY;
mysql> CREATE TABLE orders (id INT, description BLOB NOT SECONDARY);
笔记

如果查询访问使用该NOT SECONDARY属性定义的列,则默认情况下查询在 MySQL 数据库系统上执行。

要包括以前排除的列,请参阅 第 2.4 节“修改表”中描述的过程。

定义辅助引擎

对于要加载到 HeatWave 中的每个表,您必须将 HeatWave 查询处理引擎 ( RAPID) 定义为表的辅助引擎。要定义RAPID为辅助引擎,请在or语句 中指定SECONDARY_ENGINE 表选项:ALTER TABLECREATE TABLE

mysql> ALTER TABLE orders SECONDARY_ENGINE = RAPID;
mysql> CREATE TABLE orders (id INT) SECONDARY_ENGINE = RAPID;

加载表

要将表加载到 HeatWave 中,请 在语句 中指定SECONDARY_LOAD选项 。ALTER TABLE

mysql> ALTER TABLE orders SECONDARY_LOAD;

SECONDARY_LOAD子句具有以下属性:

  • 它被认为是本地操作,因此从二进制日志中省略。

  • READ COMMITTED使用隔离级别 读取数据。