写点什么

[1.2.0 新功能系列: 一] Apache Doris 1.2.0 版本 Light Schema Change

作者:张家锋
  • 2022-12-14
    陕西
  • 本文字数:945 字

    阅读完需:约 3 分钟

在 1.2.0 新版本中,对数据表的加减列操作,不再需要同步更改数据文件,仅需在 FE 中更新元数据即可,从而实现毫秒级的 Schema Change 操作,且存在导入任务时效率的提升更为显著。与此同时,使得 Apache Doris 在面对上游数据表维度变化时,可以更加快速稳定实现表结构同步,保证系统的高效且平稳运转。如用户可以通过 Flink CDC,可实现上游数据库到 Doris 的 DML 和 DDL 同步,进一步提升了实时数仓数据处理和分析链路的时效性与便捷性。

注意:

作为新的 Feature 默认关闭,用户可以通过在建表时添加下面的 Property 来开启

在新建表的时候指定:

"light_schema_change" = "true"

对历史表不起作用

建表语句示例:


CREATE TABLE `test1` (  `reg_day` date NULL COMMENT '激活日期',  `game_main` int(11) NULL COMMENT '主游戏ID',  `game_sub` int(11) NULL COMMENT '子游戏ID',  `uuid` varchar(100) NULL COMMENT '设备唯一标识',  `op_tag_1` tinyint(4) NULL,  `create_time` datetime NULL) ENGINE=OLAPUNIQUE KEY(`reg_day`, `game_main`, `game_sub`, `uuid`)COMMENT 'OLAP'DISTRIBUTED BY HASH(`uuid`) BUCKETS 16PROPERTIES ("replication_allocation" = "tag.location.default: 1","in_memory" = "false","storage_format" = "V2","light_schema_change" = "true","disable_auto_compaction" = "false");
复制代码

修改列名的操作:

alter table test1 rename column op_tag op_tag_1;
复制代码

文档地址:https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Alter/ALTER-TABLE-RENAME/

快速修改表结构

具体文档参照:https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Definition-Statements/Alter/ALTER-TABLE-COLUMN

作为新的 Feature 默认关闭,用户可以通过在新建表时添加下面的 Property 来开启:

"light_schema_change" = "true"

继续使用上面的建表语句,我们将 op_tag_1 字段类型改成 int

ALTER TABLE test1 MODIFY COLUMN op_tag_1 int ;
复制代码

查看表结构


增加字段

在最后新增一个字段

ALTER TABLE test1 ADD COLUMN new_col varchar(100) ;

查看表结构


删除字段

删除刚才新增的字段

ALTER TABLE test1 drop COLUMN new_col;
复制代码

查看表结构


真的是非常方便,快点来体验吧


发布于: 刚刚阅读数: 5
用户头像

张家锋

关注

还未添加个人签名 2007-07-01 加入

还未添加个人简介

评论

发布
暂无评论
[1.2.0新功能系列:一] Apache Doris 1.2.0 版本 Light Schema Change_张家锋_InfoQ写作社区