版本发布说明 2026-08-21
本次发布(Release 2026.08.21)引入了一系列新功能、增强特性、性能优化以及问题修复。整体更新聚焦于数据版本管理、开放表格式写入、AI 非结构化数据处理、增量计算、SQL 兼容性和高并发查询稳定性。
请注意,这些更新将分阶段逐步推送至以下区域,更新将在发布日起一至两周内完成,具体时间取决于你所在的区域。
-
国内区域
- 阿里云(上海)
- 腾讯云(上海/北京/广州)
- AWS(北京)
- 阿里云(杭州)
-
国际区域
- 阿里云(新加坡)
- AWS(新加坡)
新功能特性
Managed Iceberg
Managed Iceberg 表支持完整写入路径,引擎现在可以直接对 Iceberg 表执行建表、写入、更新、删除、分区管理和 Compaction 等操作,并与 Spark 写入链路保持互通。
支持的能力包括:
- 使用
创建 Managed Iceberg 表USING ICEBERG - 支持
、INSERT
、UPDATE
等 DML 操作DELETE - 支持分区表更新、删除和
DROP PARTITION - 支持
执行表级 CompactionOPTIMIZE - 支持 Managed Iceberg orphan 文件自动清理
示例:
Iceberg Equality Delete
Iceberg Equality Delete 在本版本完成了关键链路的补全,覆盖写入、回放、Compaction 和冲突处理四个方向:
- 去重:在 checkpoint snapshot 层对 equality delete 文件去重,避免同一条删除记录被多次应用。
- 回放:equality delete 文件现在可以参与 FMDT(文件元数据)回放,保证崩溃恢复后的数据一致性。
- Compaction:SQL Compaction 场景支持本地回放和本地改写,将 equality delete 文件转换为 position delete,降低查询时的读放大。
这三项能力共同作用,使 Iceberg 表在行级更新/删除和多引擎协同写入场景下的一致性与读性能得到明显提升。
Semantic View 查询接口
Semantic View 从"可定义"扩展为"可查询",支持通过
semantic_view() 在 SQL 中直接访问语义视图,并在查询规划阶段校验指标、维度粒度和关联关系。
核心增强包括:
- 支持
查询语义视图semantic_view() - 支持跨语义视图关联查询
- 支持 FACTS 关键字和内联子查询:FACTS 子句允许声明行级事实列,查询时可直接返回明细数据而非汇总值;逻辑表来源新增内联 SELECT 子查询语法,可在视图定义内嵌入预过滤逻辑,无需额外建视图。
- 支持隐式数据过滤(FILTER 子句):在视图定义中声明 FILTER 条件,每次查询时自动在聚合前应用该过滤器,无需用户手动添加 WHERE,适合数据范围固定的业务指标视图(如仅统计有效订单、仅展示当前租户数据)。
- 语义视图维度属性在 DESC 中可见:
、is_time
、is_unique
等维度标注现在可通过enum_values
直接查看,不再需要依赖原始 JSON 格式,便于建表后核查视图定义。DESC EXTENDED - 支持 arithmetic metrics、window metrics 和 multi-grain fan-out:
- 算术指标(Arithmetic Metrics):指标定义可在聚合结果上做二次计算,例如
求均价、SUM(金额)/COUNT(订单)
计算百分比,不再局限于单一聚合函数。SUM(利润)*100 - 窗口指标(Window Metrics):指标定义中可使用窗口函数,例如
计算累计值、SUM(SUM(金额)) OVER (ORDER BY 日期)
计算分组汇总,适合趋势分析和排名类场景。SUM(SUM(金额)) OVER (PARTITION BY 地区) - 多粒度展开(Multi-Grain Fan-out):当语义视图中的指标来自不同粒度的事实表(如订单表的总金额和明细表的行项目金额),系统会分别在各表的粒度先完成聚合,再通过
合并结果,避免多表关联时因行数膨胀导致的数值重复计算。FULL OUTER JOIN
- 算术指标(Arithmetic Metrics):指标定义可在聚合结果上做二次计算,例如
AI Function 增强
AI Function 继续扩展非结构化数据处理能力,覆盖 PDF、图片、语音等多模态输入,并优化 AI 函数请求容错控制、执行并行控制能力。
| 函数 | 说明 |
|---|---|
| 帮助用户在批量调用前估算 token 消耗,规避超预算风险 |
| 将 PDF 文档解析为结构化 JSON 字符串,包含文档元数据、每页纯文本和提取的版面结构(块、行、文字坐标等)。适合需要对 PDF 内容做程序化处理的场景,如抽取表格、段落、坐标信息等。该函数不与大模型交互,不消耗 token |
| 将 PDF 文档转换为 Markdown 文本,适合将 PDF 内容送入大模型处理、知识库构建或文档摘要等场景。该函数不与大模型交互,不消耗 token |
增量计算增强
Dynamic Table 和增量计算在本版本重点加强了三个方向:唯一键识别范围扩展、State Table 开销控制和刷新策略精细化。
- 支持通过
声明等价主键,为无 PK 外部表开启增量刷新;ARRAY/STRUCT/BINARY 列和分区键均可参与唯一键生成。EQUIV
聚合函数支持增量维护。mode(expr, true)- State Table 策略优化:共享 State Table 豁免数量限制,深层 Join 子树改用间隔式检查点策略,降低 State Table 总开销。
- 新增开关精确控制全量刷新触发条件,减少不必要的全量重算。
外表与对象存储扩展
外表和对象存储访问能力在本版本继续扩展:
- Azure connection 增加新的访问策略框架和认证类型
- GCS / Azure Blob 写入补齐防覆盖保护:并发写入同一路径时,服务端原子拒绝重复写入而非静默覆盖,消除分布式场景下的数据覆盖风险,与 OSS/S3 的一致性保障对齐。
- 对象存储访问支持 STS 临时凭证:执行器访问 OSS/S3 等存储时,可改为下发短时效、按 bucket 限定范围的 STS 临时令牌,提升多租户场景下的存储访问安全性。
- 支持读取 gzip / bzip2 压缩的 Hive text 文件
- 倒排索引增强(对齐 Elasticsearch 风格):字符串列可同时建精确索引与全文索引,查询自动按条件类型路由。
- 在通过 Hive Metastore(HMS)接入的外部 Schema(ext_hive)下,现在可以直接用
创建 Paimon 格式的外部表。Lakehouse 会自动初始化 Paimon 的元数据文件,并将表信息同步注册到 HMS,让 Spark、Flink 等其他引擎也能通过 Hive Catalog 访问同一份 Paimon 数据。CREATE EXTERNAL TABLE ... USING paimon
SQL 兼容性与函数
Spark 兼容性
本版本增强了 Spark SQL 兼容能力,覆盖 PIVOT / UNPIVOT、MERGE、类型转换和 legacy 行为开关。
- 支持多列
/PIVOTUNPIVOT
支持 Spark-compatible 语法扩展MERGE INTO- 支持 float / double 转 int 的 Spark 溢出语义
- 支持 Spark legacy 类型转换模式
示例:
Doris 兼容性
新增 Doris 兼容能力,适配数组下标、JSON 函数和 MySQL 风格语义。
- 支持一维数组下标从 1 开始
- 新增
函数ELEMENT_AT_DORIS
会自动启用相关兼容行为,例如cz.sql.compatible.target = doris
、cast.string.to.json.as.parse
等mysql.having
示例:
Presto 与 SQL Server 兼容性
- 支持 Presto decimal 除法规则
- 新增
,作为CHARINDEX
的 SQL Server 兼容别名locate - Parser 支持 SQL Server 风格比较运算符
和!>!<
新增与增强函数
| 函数 / 语法 | 说明 |
|---|---|
| URL 解码失败时返回 NULL,避免查询失败 |
| 重复 key 行为调整为 last-win,与 Spark 行为对齐 |
/ | Parser 增强对应函数调用兼容性 |
开发者工具与管理增强
安全与权限
- 新增 Ranger 鉴权插件相关能力,支持 Java 侧 Ranger 鉴权 endpoint 和 plugin provider 接入
- PIPE DDL 在 dedicated 环境下可自动路由到 serverless
调度与诊断增强
DAG 推测执行能力进一步增强,用于更早识别慢任务并提升长尾任务处理效率。
- 提前 lateral straggler 检测,不再等到 task 接近超时才触发推测执行
- 支持配置同时推测执行的 task 数量上限
- Job Profile 中记录每次 rerun 的原因,例如 straggler、failure 等
- 一个 task 在前次推测失败或被 kill 后,可再次触发推测执行
- 修复 NoOp task 延迟导致的调度死锁问题
基础设施增强
- 引入基于 NuRaft 的 Raft KVStore 模块骨架,支持
、CREATE
、UPDATE
操作REMOVE - Full refresh reason 记录到
,并改进错误信息可读性DESC HISTORY - Pipe event-time states 支持持久化,重启后状态不丢失
- Arrow 升级到
25.0.0.cz.1
问题修复
优化器与规划器
- 修复
后接UNION ALL
时规则可能进入死循环的问题JOIN - 修复 LEFT ANTI JOIN 后 NDV 高置信度错误继承导致行数估算偏低的问题
- 修复 LEFT SEMI / LEFT ANTI 在无等值键场景下的行数估算问题
- 修复带 DISTINCT 的 grouping set 被错误拆分的问题
- 修复包含窗口函数输出列时
被错误下推的问题ORDER BY - 修复含
的条件阻止 Join 谓词下推的问题RAISE_ERROR - 修复不同 partition key 的 chain-top Window 未触发增量规则的问题
- 修复 decimal zero literal 在聚合简化中的边界问题
类型与解析器
- 修复
毫秒部分被截断的问题CAST(ts AS BIGINT) - 修复 double-quoted 列别名被错误识别为 typeConstructor 的问题
- 修复 struct 内 DECIMAL nullable 不一致导致
crash 的问题UNION ALL - 修复反引号 double-backtick 转义解析问题
- 修复
重复 key 语义问题,现已调整为 last-winstr_to_map
存储与事务
- 修复并发 upsert 时 delta file name 冲突的问题,现支持重试
- 修复 ORC 读写未使用 SQL Session 时区的问题
- 修复 time partition transforms 未对齐 UTC 语义的问题
- 修复 overwrite manifest split 后增量 replay 可能跳过部分数据的问题
元数据与缓存
- 修复 Shared Table 跨 RPC 后 original table instance 丢失的问题
- 修复 Alter Table Spec 重试后内外 spec id 不一致的问题
- 修复多 datasource 表分区 cache 误命中的问题
- 修复 DeltaLogCache stale snapshot 导致 update 时 AssertionError 的问题
- 修复间隔时间为 0 的 Dynamic Table refresh 死循环问题
- 修复表 cache 过期后未正确刷新的问题
其他修复
- 修复 OOM Job 内存使用率阈值计算错误导致误判的问题
- 修复 AWS SDK 在特定场景下可能 hang 的问题
- 修复 COS / OFS FileSystem 未复用导致 native 层 OOM 的问题
- 将多线程环境下的 fork + exec 调整为 posix_spawn,降低死锁风险
- 修复 MySQL kill query 控制语句被错误解析为 SQL 的问题
联系我们
