更新时间:2024-10-24 GMT+08:00

INSERT INTO CARBON TABLE

命令功能

INSERT命令用于将SELECT查询结果加载到CarbonData表中。

命令格式

INSERT INTO [CARBON TABLE] [select query];

参数描述

表1 INSERT INTO参数

参数

描述

CARBON TABLE

需要执行INSERT命令的CarbonData表的名称。

select query

Source表上的SELECT查询(支持CarbonData、Hive和Parquet表)。

注意事项

  • 表必须已经存在。
  • 用户应属于数据加载组以执行数据加载操作。默认情况下,数据加载组被命名为“ficommon”
  • CarbonData表不支持Overwrite。
  • 源表和目标表的数据类型应该相同,否则表中的数据将被视为Bad Records。
  • INSERT INTO命令不支持部分成功(partial success),如果存在Bad Records,该命令会失败。
  • 在从源表插入数据到目标表的过程中,无法在源表中加载或更新数据。

    若要在INSERT操作期间启用数据加载或更新,请将以下参数配置为“true”

    “carbon.insert.persist.enable”=“true”

    默认上述参数配置为“false”

    启用该参数将降低INSERT操作的性能。

示例

create table carbon01(a int,b string,c string) stored as carbondata;

insert into table carbon01 values(1,'a','aa'),(2,'b','bb'),(3,'c','cc');

create table carbon02(a int,b string,c string) stored as carbondata;

INSERT INTO carbon02 select * from carbon01 where a > 1;

系统响应

可在driver日志中查看命令运行成功或失败。