SelectDB Enterprise
发布通告
SQL Converter for Apache Doris

SQL Converter for Apache Doris

SQL Converter for Apache Doris 1.0.x

SQL Converter for Apache Doris 1.0.7

发布日期:2025 年 01 月 08 日

系统优化

  • 使用 gunicorn 服务器替代默认的 Flask 服务器, 优化服务的性能
  • 支持在 apiserver/config/config.conf 中配置 workers 的个数来提供更优的转换性能,默认 workers 为 1

Presto/Trino->Doris 相关改进

  • 支持 Presto CTE 表别名不敏感
  • 支持 presto CROSS JOIN UNNEST() 语法转换
  • 支持 Presto 带表属性的 CTAS 语法转换
  • 支持 presto GROUP BY ROLLUP 语法的转换
  • 支持 Presto 的子查询中带 JOIN 结构语法的改写
    • 例如: select * from ((select 1 as c1) as a left join (select 2 as c2) as b on a.c1=b.c2) as t;
  • 支持 presto UNNEST 表函数转换
  • 修复 ORDER BY NULLS FIRST 语法转换
    • 由于 Doris 默认为 NULLS FIRST,而 Presto 默认为 NULLS LAST,自动处理该行为差异
  • 修复 OFFSET LIMIT 解析报错
  • 修复 Presto SEQUENCE 转换为 Doris array_range 的问题
  • 新增 get_json_object 转换支持
  • 修复 LEAD 和 LAG 函数转换问题
  • 修复 date_add 函数不支持季度粒度的问题
  • 修复 IF 表达式转换
  • 修复 TRIM 函数转换,doris 中新增 TRIM_IN 函数兼容 presto 的 TRIM 函数行为
  • 修复时间类型转换
  • 修复包含 Unicode 编码的日期字符串转换
  • 修复 presto MD5 函数转换

StarRocks->Doris 相关改进

  • 新增 StarRocks 聚合函数转换支持
  • 新增 StarRocks 数组函数转换支持
  • 新增 StarRocks 数学函数转换支持
  • 新增 StarRocks multi_distinct_count 函数转换支持

多 SQL 批量转换优化

  • 完善多 SQL 语句的转换状态处理机制:
    • 全部转换成功:返回所有已转换的 SQL 语句
    • 部分转换成功:返回已转换的SQL语句和未能转换的原始 SQL 语句
    • 全部转换失败:返回原始 SQL 语句,并自动降级使用原始 SQL 执行
  • 优化转换状态返回码:
    • 成功(code=0):完全转换或部分转换成功
    • 失败(code=1):转换失败,系统将使用原始 SQL 执行

其他功能修复

  • 修复 ORDER BY、LIMIT 和 OFFSET 表达式作用范围
  • 修复 Unicode 编码转换问题
  • 将 switch catalog 解析为 Command
  • 修复 ZEROFILL 和 DOUBLE/FLOAT UNSIGNED 数据类型转换
  • 修复了表名大小写变换失败的问题

SQL Converter for Apache Doris 1.0.6

发布日期:2024 年 08 月 23 日

系统优化

  • 工具更名为 SQL Converter for Apache Doris(简称 SQL Converter)
  • 新增可视化界面服务,无需依赖 docker 环境部署前端服务
    • 工具目录分为 apiserver 和 webserver 两部分
    • 具体部署操作请参考官网手册
  • 优化 Actions 单元测试
  • 新增反引号标识符解析支持

Presto/Trino->Doris 相关改进

  • 修复子查询别名大小写不敏感问题
  • 新增多个 Presto 函数支持, eg: zip,repeat,bitwise_or_agg,bitwise_and_agg
  • 新增 Presto ipprefix 数据类型转换
  • 修复 Presto json_extract 函数行为不一致问题
  • 修复 Presto url_extract_parameter 函数参数转换问题
  • 修复 Presto codepoint 函数转换问题
  • 修复 Presto regexp_extract 转换问题

DDL 转换改进

  • 新增 Teradata DDL 转换支持
  • 新增 Trino DDL 转换支持
  • 新增 Teradata CTAS DDL 转换支持
  • 优化主键的非空属性约束
  • 优化 MySQL DDL 自增列类型转换为 Doris 时为 BIGINT NOT NULL
  • 修复 ClickHouse 建表语句转换中的若干问题

其他功能修复

  • 修复相同层级下有同一个键过滤条件的解析错误,eg:select * from tbl where id = a where id = b
© 2023 北京飞轮数据科技有限公司 京ICP备2022004029号 | Apache、Apache Doris 以及相关开源项目名称均为 Apache 基金会商标