Skip to content

Doris方言使用说明

来自社区成员@lizhian的贡献

前置条件

  • 添加方言依赖
xml

<dependency>
    <groupId>org.dromara.autotable</groupId>
    <artifactId>auto-table-strategy-doris</artifactId>
    <version>[maven仓库最新版本]</version>
</dependency>
  • 添加驱动
xml

<dependency>
    <groupId>com.mysql</groupId>
    <artifactId>mysql-connector-j</artifactId>
    <version>[maven仓库最新版本]</version>
</dependency>
  • 修改@AutoTabledialect值为Doris
  • 添加@DorisTable注解
java

@Data
@AutoTable(dialect = DatabaseDialect.Doris)
@DorisTable(...)
public class TestTable {

    private Integer id;

    private String username;

    private Integer age;

    private String phone;
}

配置项

rollup-prefix

  • 说明: 物化视图前缀
  • 默认值: auto_rlp_
yaml
auto-table:
  doris:
    rollup-prefix: my_rollup_
properties
auto-table.doris.rollup-prefix=my_rollup_

rollup-auto-name-max-length

  • 说明: 物化视图自动生成名字的最大长度
  • 默认值: 100
yaml
auto-table:
  doris:
    rollup-auto-name-max-length: 128
properties
auto-table.doris.rollup-auto-name-max-length=128

update-limit-table-data-length

  • 说明: 更新表时,允许更新表的最大容量上限,默认为1G,当表容量大于1G时,不执行更新操作
  • 默认值: 1073741824
yaml
auto-table:
  doris:
    update-limit-table-data-length: 1073741824
properties
auto-table.doris.update-limit-table-data-length=1073741824

update-backup-old-table

  • 说明: 更新时,是否备份旧表
  • 默认值: false
yaml
auto-table:
  doris:
    update-backup-old-table: true
properties
auto-table.doris.update-backup-old-table=true

admin-user ^2.5.0

  • 类型:String
  • 默认:``

创建数据库:具备相关权限的用户,如果链接上的用户没有相关权限,请配置该值

admin-password ^2.5.0

  • 类型:String
  • 默认:``

创建数据库:具备相关权限的用户的密码

更新流程说明

本项使用临时表方式执行更新操作

流程开始会创建一张临时表,当临时表的结构与正式表有差异时,会复制正式表数据到临时表,然后删除正式表,最后临时表重命名为正式表

img.png

  • 由于Doris建表配置多,且生产环境一般会存储海量数据,不建议在生产环境执行修改或删除操作
  • 生产环境务必使用validate模式
  • 一般在项目初期才会频繁修改Doris表配置
  • 本项目旨在项目初期减少操作Doris数据库的工作量
  • 数据无价,请自行删除备份表