Enterprise Core
Enterprise Core 2.1.x
Enterprise Core 2.1.5
发布日期:2024 年 7 月 25 日
行为变更
- JDBC Catalog 的默认连接池大小从 10 调整为 30。
- 创建 JDBC Catalog 时,参数
connection_pool_max_size
的默认值改为 30,以避免高并发场景下连接池耗尽的问题。 - 将系统的保留内存的最小值,即
low water mark
调整为min (6.4G, MemTotal * 5%)
,以更好地防止 BE 出现 OOM 问题。 - 修改了单请求多个语句的处理逻辑,当客户端未设置
CLIENT_MULTI_STATEMENTS
标志位时,将仅返回最后一个语句的结果,而非所有语句结果。 - 不再允许直接更改异步物化视图的数据。
- 增加会话变量
use_max_length_of_varchar_in_ctas
,用于控制 CTAS 时 VARCHAR 和 CHAR 类型长度的生成行为。默认值是 true。当设置为 false 时,使用推导出的 VARCHAR 长度,而不是使用最大长度。 - 统计信息收集,默认开启了通过文件大小预估 Hive 表行数的功能。
- 默认开启异步物化视图透明改写机制。
- 透明改写利用分区物化视图,如果分物物化视图部分分区失效,默认行为是将所有基础表与物化视图联合,以保证查询数据的正确性。
新功能
- 湖仓一体:会话变量
read_csv_empty_line_as_null
用于控制在读取 CSV 格式文件时,是否忽略空行。默认情况下忽略空行,当设置为 true 时,空行将被读取为所有列均为 Null 的行;新增兼容 Presto 的复杂类型输出格式。通过设置set serde_dialect="presto"
,可以控制复杂类型的输出格式 与 Presto 一致,用于平滑迁移 Presto 业务。 - 多表物化视图:支持在构建物化视图中使用非确定性函数;支持原子替换异步物化视图定义;支持通过
show create materialized view
查看异步物化视图创建语句;支持对多维聚合查询的透明改写;支持对非聚合物化视图的聚合查询进行透明改写;支持使用 Key 列,对查询中的 DISTINCT 聚合做透明改写;支持对物化视图进行分区,通过使用date_trunc
对分区进行汇总;支持分区表值函数(TVF)。 - 半结构化数据分析:使用 VARIANT 类型的表支持部分列更新;支持默认开启 PreparedStatement;VARIANT 类型支持导出为 CSV 格式;支持
explode_json_object
函数,用于将 JSON Object 行转列;ES Catalog 将 ES 的 NESTED 或者 OBJECT 类型映射成 Doris JSON 类型;默认情况下,对于具有指定分词器的倒排索引,默认开启support_phrase
以提升match_phrase
系列查询性能。 - 查询优化器:支持
explain DELETE FROM
语句;支持常量表达式参数的 Hint 形式。 - 内存管理:增加了 HTTP API 以清除缓存。
- 权限管理:支持对表值函数(TVF)中的资源进行鉴权。
改进提升
- 湖仓一体:将 Paimon 升级至 0.8.1 版本;修复在部分情况下,查询 Paimon 表时导致
org.apache.commons.lang.StringUtils
的问题;支持腾讯云 LakeFS;优化了外部表查询时获取文件列表的超时时间;可通过会话变量fetch_splits_max_wait_time_ms
进行设置;改进了 SQLServer JDBC Catalog 的默认连接逻辑;默认情况下,不干预连接加密设置。仅当force_sqlserver_jdbc_encrypt_false
设置为true
时,才会强制在 JDBC URL 中添加encrypt=false
以减少认证错误,从而提供更灵活的控制加密行为的能力;Hive 表的 show create table 语句增加序列化/反序列化;FE 端 Hive 表列表默认缓存时间由 1 天改为 4 小时;数据导出(Export/Outfile)支持指定 Parquet 和 ORC 的压缩格式;当使用 CTAS+TVF 创建表时,TVF 中的分区列将被自动映射为 Varchar(65533)而非 String,以便该分区列能够作为内表的分区列使用;优化 Hive 写入操作元数据的访问次数;ES Catalog 支持将 NESTED/OBJECT 类型映射到 Doris 的 JSON 类型;优化使用低版本 OBJECT 驱动连接 Oracle 时的报错信息;当 Hudi 表 Incremental Read 返回空集时,Doris 同样返回空集而非报错;修复部分情况下内外表关联查询可能导致 FE 超时的问题;修复了在从旧版本升级到新版本时,如果开启了 Hive Metastore Even Listener 情况下,可能出现 FE 元数据回放错误的问题。 - 多表物化视图:创建异步物化视图时,支持自动选择 Key 列;异步物化视图分区刷新支持定义中使用
date_trunc
函数;嵌套物化视图中,当下层命中聚合上卷改写后,上层现在依然可以继续进行透明改写;当 Schema Change 不影响异步物化视图数据正确性时,异步物化视图保持可用状态;提升了透明改写的规划速度;计算异步物化视图可用性时,不再考虑当前的刷新状态。 - 半结构化数据管理:通过采样优化 DESC 查看 VARIANT 子列的性能;行存
page_size
默认从 4K 调到 16K 压缩率提升 30%,而且支持表级别可配置;JSON 类型支持 Key 为空的特殊 JSON 数据。 - 倒排索引:减少倒排索引 Exists 调用避免对象存储访问延迟;优化倒排索引查询流程额外开销;在物化视图中不创建倒排索引。
- 查询优化器:当比较表达式两侧都是 Literal 时,String Literal 会尝试向另一侧的类型转换;重构了 VARIANT 类型的子路径下推功能,现在可以更好地支持复杂的下推场景;优化了物化视图代价计算的逻辑,能够更准确的选择代价更低的物化视图;提升了 SQL 中使用用户变量时的 SQL 缓存规划速度;优化了 NOT NULL 表达式的估行逻辑,当查询中存在 NOT NULL 时可以获得更好的性能;优化了 LIKE 表达式的 NULL 拒绝推导逻辑;优化查询指定分区失败时的报错信息,可以更清楚看到是哪个表导致的问题。
- 查询引擎:将某些场景下 BITMAP_UNION 算子的性能提升了 3 倍;提升 Arrow Flight 在 ARM 环境下的读取性能;优化了
explode
、explode_map
、explode_json
函数的执行性能。 - 数据导入:支持为
INSERT INTO ... FROM TABLE VALUE FUNCTION
语句设置max_filter_ratio
参数。
Bug 修复
- 湖仓一体:修复部分情况下查询 Parquet 格式导致 BE 宕机的问题;修复查询 Parquet 格式,BE 端打印大量日志的问题;修复部分情况下 FE 端重复创建大量 FileSystem 对象、写入 Hive 后的事务信息未清理、Hive 表写入操作导致线程泄露、无法正确获取 Hive Text 格式行列分隔符、读取 lz4 压缩块时的并发、Iceberg 表 count(*) 返回错误、创建基于 MinIO 的 Paimon Catalog 导致 FE 元数据回放错误、使用 Ranger 创建 Catalog 客户端卡死的问题。
- 多表物化视图:修复当基表增加新的分区时,可能导致的分区聚合上卷改写后结果错误的问题;修复关联的基表分区删除后,物化视图分区状态没有被置为不同步的问题;修复异步物化视图构建偶现的死锁问题;修复异步物化视图单次刷新大量分区时偶现的,报错 nereids cost too much time 问题;修复创建异步物化视图时,如果最终的 Select List 中存在 Null Literal,则无法创建的问题;修复单表物化视图,如果构建了聚合的物化视图,虽然改写成功,但是 CBO 没有选择的问题;修复 Join 输入都是聚合的情况下,构建分区物化视图,分区推导失败的问题。
- 半结构化数据管理:修复 VARIANT 在并发/异常数据等特殊情况下的问题;修复 VARIANT 用在不支持的 SQL 中 Coredump 的问题;修复 1.x 版本升级到 2.x 或者更高版本时因为 MAP 数据类型 Coredump 的问题;修复 ES Catalog 对 Array 的支持。
- 倒排索引:修复倒排索引 v2 DROP INDEX 元数据没有删除的问题;修复字符串长度超过“ignore above”时查询准确性问题;修复索引大小统计的问题。
- 查询优化器:修复部分因为保留关键字而导致导入无法执行的问题;修复了在创建表时 CHAR(255) 类型错误的记录为 CHAR(1) 的问题;修复了在相关子查询中的连接表达式为复杂表达式时返回错误结果的问题;修复了 DECIMAL 类型分桶裁剪有可能错误的问题;修复了部分场景下开启 Pipeline Local Shuffle 后,聚合算子计算结果错误的问题;修复当聚合算子中存在相等的表达式时,可能出现的规划报错问题;修复当聚合算子中存在 Lambda 表达式时,可能出现的规划报错问题;修复了由窗口函数生成的字面量在优化为字面量时类型错误导致无法执行的问题;修复了聚合函数 foreach combinator 错误输出 Null 属性问题;修复了 acos 函数在参数为超越范围值的字面量时不能规划的问题;修复当查询指定的同步物化视图时,显示指定查询分区导致规划报错的问题;修复了在规划过程中偶尔出现 NPE 的问题。
- 查询引擎:修复 DELETE WHERE 语句中,在 DECIMAL 数据类型作为条件报错的问题;修复查询执行结束,但是 BE 内存不释放的问题;修复在千级别 QPS 场景下,Audit Log 占用 FE 内存太多的问题;修复 sleep 函数在输入非法值时 BE Core 的问题;修复执行过程中 sync filter size meet error、使用时区时结果不对的问题;修复 cast string 到 int 时结果不对的问题;修复 Arrow Flight 协议在开启 Pipelinex 时查询报错的问题;修复 cast string to date/datetime 报错的问题;修复使用 <=> 做大表关联查询时 BE Core 的问题。
- 存储管理:修复列更新写入时遇到 DELETE SIGN 数据不可见问题;优化 Schema Change 期间 FE 的内存占用;修复 BE 重启时事务没有 Abort 导致的 BE 下线卡住问题;修复 NOT-NULL 到 NULL 类型变更的偶发报错问题;优化 BE 宕机时的副本修复调度;单个 BE 创建 Tablet 时支持 round-robin 选择磁盘;修复 Publish 慢导致的查询 -230 错误;优化 Partition Balance 的速度;使用 FD 数目和内存控制 Segment Cache 避免 FD 不足;修复 Clone 和 Alter 并发可能导致的副本丢失问题;修复不能调整列顺序问题;禁止自增列的部分 Schema Change 操作;修复 Delete 操作报错不准确;BE 侧 Trash 过期时间调整为一天;优化 Compaction 内存占用和调度;检查潜在的过大 Backup 导致 FE 重启的问题;恢复动态分区删除策略以及交叉分区的行为到 2.1.3;修复 DELETE 谓词重部分 DECIMAL 报错问题。
- 数据导入:修复导入时错误处理竞争导致的数据不可见问题;Stream Load 导入支持 hhl_from_base64;修复潜在的单表非常多 Tablet 导入失败时可能导致 FE OOM 的问题;修复 FE 主从切换时自增列可能重复的问题;修复 INSERT INTO SELECT 自增列报错问题;降低数据下刷线程数,优化内存占用;优化 Routine Load 任务自动恢复和错误信息;增加 Routine Load 默认攒批大小;修复 Routine Load 在 Kafka EOF 过期的任务停止问题;修复一流多表 Coredump;修复 Group Commit 内存估计不准导致的提前反压问题;优化 Group Commit BE 侧线程占用;修复数据没有分区时没有错误 URL 的问题;修复导入时潜在的内存误操作问题。
- 主键模型:降低主键表 Compaction 的内存占用;修复主键副本 Clone 失败时可能的重复数据问题。
- 内存管理:修复 Jemalloc Cache 统计不准的问题;修复在 K8s / CGroup 中不能正确获取内存大小的问题。
- 权限管理:修复 Table Valued Function 引用 Resource 时没有鉴权的问题;修复 Show Role 语句中没有 Workload Group 权限的问题;修复创建 Row Policy 时,同时执行两条语句,导致 FE 重启失败的问题;修复部分情况下,老版本升级后,因为 Row Policy 导致 FE 元数据回放失败的问题。
- 其他:修复计算节点参与内部表创建的问题;修复 enable_strong_read_consistency = true 时从延迟问题。
Enterprise Core 2.1.4
发布日期:2024 年 6 月 26 日
- 查询优化器支持 FE 火焰图工具、SELECT DISTINCT 与聚合函数同时使用、无 GROUP BY 的单表查询重写及高并发点查询功能。
- 湖仓一体支持 Paimon 的原生读取器来处理 Deletion Vector、在表值函数(TVF)中使用 Resource及通过 Ranger 插件实现数据脱敏。
- 异步物化视图构建支持分区上卷、触发式更新、指定 store_row_column及Storage Medium,透明改写支持单表异步物化视图及AGG_STATE 类型的聚合上卷。
- 其他功能支持,包括新增 replace_empty 函数、支持 show storage policy using 语句及 BE 侧的 JVM 指标。
- 进行了多项功能优化,包括优化 Segment Cache 所消耗内存的估算准确度、支持为中文列名创建倒排索引等。
- 对查询优化器、查询执行、物化试图、半结构化数据分析等多方面进行了问题修复。
Enterprise Core 2.1.3
发布日期:2024 年 5 月 17 日
- 支持INSERT INTO Hive Catalog 中的 hive 表。
- 添加视图显示语句以查询视图。
- 工作负载组支持绑定到特定的 BE 主机。
- Broker Load 支持压缩的 JSON 格式。
- 截断函数可以使用列作为比例参数。
- 支持 mv 嵌套物化视图重写。
- 添加 BypassWorkloadGroup 以传递查询队列。
- 添加添加新函数 uuid_to_int、int_to_uuid 和 strcmp,支持hll函数hll_from_base64、hll_to_base64。
- 支持Variant类型的聚合模型。
Enterprise Core 2.1.2
发布日期:2024 年 4 月 18 日
- 增加 processlist 系统表功能,用户可以通过查询系统表获得活跃的链接信息。
- 增加新的表函数 LOCAL 以访问部分共享存储上的文件。
- 将 EXPORT 命令中 data_consistence 属性的默认值调整为 Partition,这可以使得并发导入的同时做 EXPORT 操作更容易成功。
- 兼容部分 MySQL Connector(如 MySQL.Data for .NET)将 SELECT @``@autocommit 的返回值类型变更为 BIGINT。
- 修复正常 Workload Group 从 2.0 或者更早版本升级到 2.1 时没有默认创建的问题。
- 在 Profile 中增加已命中的物化视图信息,能够方便地定位物化视图是否命中。
- 增加 DNS Cache,解决 K8s 环境下域名解析较慢,从而影响查询的问题。
- 增加异步刷新 Catalog 中表的行数信息,避免查询抖动。
Enterprise Core 2.1.1
发布日期:2024 年 4 月 8 日
- 改变 Float 类型字段返回值序列化的方式,提升大数据量下 Float 返回的性能。
- 修复了从 2.0.x 滚动升级至 2.1.x 的过程中,部分 BE 节点升级出现 Core 的问题及使用 JDBC Catalog 会出现 Query 报错的问题。
- 支持 IP 透传的协议,以方便在 FE 之前启用代理的同时还能获取客户端准确的 IP 地址,实现白名单权限控制。
- 增加系统表 backend_active_tasks ,以实时监测每个 BE 上活跃任务以及消耗的资源信息。
- CCR 支持倒排索引。
- Arrow 序列化方式增加对 Variant 类型的支持。
- 修复包括在 Restore 过程中 BE 有时候会 Core 在内的 20 项 bug 。
Enterprise Core 2.1.0
发布日期:2024 年 3 月 18 日
- 复杂 SQL 查询性能的进一步提升,在 TPC-DS 1TB 测试数据集上获得超过 100% 的性能提升,查询性能居于业界领先地位。
- 数据湖分析场景性能改进、相对于 Trino 和 Spark 分别有 4-6 倍的性能提升,并引入了多 SQL 方言兼容、便于用户可以从原有系统无缝切换至 Apache Doris。在面向数据科学以及其他形式的大规模数据读取场景,引入了基于 Arrow Flight 的高速读取接口,数据传输效率提升 100 倍。
- 在半结构化数据分析场景,引入了全新的 Variant 和 IP 数据类型,完善了一系列分析函数,面向复杂半结构化数据的存储和分析处理更加得心应手。
- 引入基于多表的异步物化视图以提升查询性能,支持透明改写加速、自动刷新、外表到内表的物化视图以及物化视图直查,基于这一能力物化视图也可用于数据仓库分层建模、作业调度和数据加工。
- 在数据存储方面,引入了自增列、自动分区、MemTable 前移以及服务端攒批的能力,提高大规模数据实时写入的效率。
- 在负载管理方面,进一步完善了 Workload Group 资源组的隔离能力,并增加了运行时查看 SQL 资源用量的能力,进一步提升了多负载场景下的稳定性。
Enterprise Core 2.0.x
Enterprise Core 2.0.14
发布日期:2024 年 8 月 8 日
- 增加获取最近一个查询 Profile 的 REST 接口
curl http://user:password@127.0.0.1:8030/api/profile/text
。 - 优化 MOW 表带有 Sequence 列的主键点查性能。
- 优化倒排索引在查询条件很多时的性能。
- 创建带分词的倒排索引时,自动开启 support_phrase 选项加速 match_phrase 系列短语查询。
- 支持简化的 SQL Hint,例如 SELECT /*+ query_timeout(3000) */ * FROM t 。
- 读对象存储遇到 429 错误时自动重试提升稳定性。
- LEFT SEMI / ANTI JOIN 在匹配到符合的数据行时,终止后续的匹配执行提升性能。
- 避免非法数据返回 MySQL 结果时出发 coredump。
- 输出类型名字时统一使用小写,保持跟 MySQL 兼容对 BI 工具更加友好。
Enterprise Core 2.0.13
发布日期:2024 年 7 月 23 日
- 仅在客户端设置 CLIENT_MULTI_STATEMENTS 时,将输入的 SQL 视为多个语句处理,以增强与 MySQL 的兼容性。
- 新增 BE 配置
allow_zero_date
,允许使用全零的日期。设置为false
时0000-00-00
被解析成NULL
,设置为true
时则被解析成0000-01-01
, 默认值为false
,跟之前的行为保持一致。 - LogicalWindow 和 LogicalPartitionTopN 允许多字段谓词下推,以提升性能。
- ES Catalog 将 ES
nested
或者object
类型映射成 DorisJSON
类型。 - LIMIT 查询现在会更早地停止读取数据,以减少资源消耗并提升性能。
- 支持具有空键的特殊 JSON 数据。
- routine load 的稳定性和易用性提升,包括负载均衡,自动恢复,异常处理,更友好的错误信息等。
- 对 BE 的硬盘选择策略和速度进行了优化。
- 改进了 JDBC Catalog 的稳定性和可用性,包括加密,线程池连接数等配置,更友好的错误信息等。
Enterprise Core 2.0.12
发布日期:2024 年 7 月 1 日
- 不再将建表的默认注释设置为表的类型,而是改成默认为空,比如 COMMENT 'OLAP' 变成 COMMENT '',这样对于依赖注释的 BI 软件更加友好。
- 将 autocommit 变量的类型从 BOOLEAN 改成 BIGINT,以免有些 mysql 客户端(比如.NET MySQL.Data)报错
- 删除
disable_nested_complex_type
参数,默认允许创建嵌套的ARRAY
MAP
STRUCT
类型 - HMS catalog 支持
SHOW CREATE DATABASE
命令 - 在 query profile 中增加更多倒排索引的指标
- 跨集群数据复制(CCR)支持倒排索引
Enterprise Core 2.0.11
发布日期:2024 年 6 月 7 日
- 为 JSON 和 TIME 添加 Trino JDBC catalog 类型映射
- 在无法转移到(非)主节点时,FE 退出以防止未知状态和过多日志
- 在删除统计表时写入审计日志
- 如果表只进行了部分分析,忽略最小/最大列统计以避免低效的查询计划
- 支持集合操作减法,例如
set1 - set2
- 使用 concat(col, pattern_str) 改进 LIKE 和 REGEXP 子句的性能,例如:
col1 LIKE concat('%', col2, '%')
- 添加查询选项以支持短路查询,保证升级兼容性
- 由于倒排索引已经成熟稳定,可以替换老的 BITMAP INDEX,因此后续新建 BITMAP INDEX 会自动切换成 INVERTED INDEX,而已经创建的 BITMAP INDEX 保持不变。整个切换过程对用户无感知,写入和查询没有变化,此外用户可以修改 FE 配置 enable_create_bitmap_index_as_inverted_index = false 来关闭该自动切换
Enterprise Core 2.0.10
发布日期:2024 年 5 月 20 日
- 增加了
read_only
和super_read_only
变量以保持和 MySQL 兼容 - 仅在 IO_ERROR 的错误才把数据目录加入 broken list,防止 fd 超限等错误导致误加入
- 基于外表 CTAS 创建新表时,把 varchar 类型转成 string 类型
- 支持把 Paimon 的 Row 类型映射成 Doris 的 Struct 类型
- 在创建 tablet 选择数据盘时,允许存在少量的倾斜
- 对
set replica drop
命令记录 editlog,以防止在 follower 节点执行命令后,其状态显示不正确 - schema change 内存自适应避免内存超限
- 倒排索引中 unicode 分词器可以配置不使用停用词
Enterprise Core 2.0.9
发布日期:2024 年 4 月 24 日
- 物化视图的 key 和 value 列都允许出现谓词
- 物化视图支持 bitmap_union(bitmap_from_array())
- 增加一个 fe 配置强制集群中所有表的 replicate allocation
- 新优化器支持日期字面量指定时区
- MATCH_PHRASE 全文检索支持 slop 参数指定搜索词之间的距离
- first_value/last_value 函数增加第二个参数指定忽略 NULL 值
- lead/lag function 的offset 参数可以为 0
- 调整物化视图匹配的顺序优先利用索引和预聚合加速查询
Enterprise Core 2.0.8
发布日期:2024 年 4 月 12 日
- 新优化器支持 TopN 优化中使用倒排索引
- 限制统计信息 STRING 长度为 1024 以控制 BE 内存消耗
- 修复未创建 JDBC Client 时意外关闭的情况
- 接受所有 Iceberg Database,不再做额外的名字检查
- 异步更新外表行数统计,避免同步更新带来的 Cache miss 和 Plan 不稳定
- 简化 Hive 外表的 isSplitable 方法,避免过多的 Hadoop metric
Enterprise Core 2.0.7
发布日期:2024 年 3 月 26 日
- round 函数行为及时间精度转换行为跟 MySQL 保持一致
- 支持通过 Nginx, HAProxy 等代理连接的 IP 透传
- 通过在 information_schema 中增加 DEFAULT_ENCRYPTION 列、增加 processlist 表,提升 BI 工具的兼容性
- 创建 JDBC Catalog 时默认自动检测连通性
- 增强自动恢复提升 kafka routine load 的稳定性
- 倒排索引中文分词对英文默认做小写转换
- repeat 函数的重复次数超过限制时报错
- 自动跳过 Hive 外表中的隐藏文件和目录
- 在某些极端情况下减少 file meta cache 避免 OOM
- 减少 broker load 的 jvm 内存占用
- 加速带排序的 INSERT INTO SELECT 比如 INSERT INTO t1 SELECT * FROM t2 ORDER BY k
Enterprise Core 2.0.6
发布日期:2024 年 3 月 14 日
- 自动选择物化视图时支持匹配带别名的函数
- 增加安全下线一个 tablet 副本的命令
- 外表统计信息增加行数统计缓存
- 统计信息收集支持 rollup
- 使用 protobuf 稳定序列化减少 tablet schema 缓存内存占用
- 提升 show column stats 的性能
- 统计信息收集和优化器支持 iceberg 和 paimon 的行数估计
- jdbc catalog 支持读取 SQL Server 的 timestamp 类型
Enterprise Core 2.0.5
发布日期:2024 年 2 月 28 日
- 增加 SHOW TABLETS BELONG 语法用于获取 tablet 属于哪个 table。
- InferPredicates 支持 IN,例如:a = b & a in [1, 2] -> b in [1, 2]。
- 利用过滤条件中的 is null 谓词,将 outer join 转换为 anti join。
- 支持对物化视图收集统计信息,并对统计信息收集任务优化,停止 auto analyze 后尽快停止统计收集。
- SHOW PROCESSLIST 支持输出连接对应的 fe。
- export 导出 csv 文件支持通过 with_bom 参数控制是否带有 Windows BOM。
- Query plan 优化,包含在无统计信息时的优化和基于 rollup 的统计信息的优化。
- 修复 MySQL catalog 中 to_date 函数下推的问题。
- 优化 JDBC 客户端连接关闭的逻辑,在异常时正常取消查询。
- 优化 routine load 的内存占用和错误信息。
Enterprise Core 2.0.4
发布日期:2024 年 1 月 26 日
- 新优化器支持 datev1, datetimev1 和 decimalv2 数据类型以及 ODBC 外表,自动统计信息收集的可观测性和性能优化。
- 倒排索引支持 lower_case 和 ignore_above 选项以及 match_regexp 和 match_phrase_prefix 查询加速。
- 数据湖支持 paimon native reader 以及读取 lzo 压缩的 parquet 文件。
- 审计日志支持 insert into。
- 更加合理、精确的 precision 和 scale 的推导,满足金融场景的计算需求。
- drop policy 支持 user 和 role。
- 改进数据冷却策略以及数据均衡、迁移等存储管控部分,节省本地硬盘存储空间。
- ASCII 字符串 substr 优化及使用 date 函数时分区裁剪优化。
Enterprise Core 2.0.3
发布日期:2023 年 12 月 8 日
- 支持自动统计信息收集,通过收集统计信息有助于优化器了解数据分布特性,选择更优的计划以大幅提升查询效率。从2.0.3版本开始正式支持,默认为全天开启状态。
- 数据湖支持 JAVA UDF、JDBC、Hudi MOR 更多系统支持复杂数据类型。
- CCR跨集群复制支持限速、truncate table等增强。
- 增加SHA、JSON更多内置函数。
- 倒排索引、case when、谓词下推等20多项性能提升。
- 分布式副本管理改进,包括跳过删除分区,colocate group ,持续写时均衡失败,冷热分层表不能均衡等。
- 复杂数据类型、倒排索引、物化视图、导入和compaction、数据湖兼容性、SQL规划等稳定性提升。
Enterprise Core 2.0.2
发布日期:2023 年 10 月 8 日
- 易用性提升,包括优化优先级网络匹配逻辑、行级别支持角色授权等。
- 新优化器 Nereids 统计数据收集改进,包括运行分析任务时取消文件缓存、支持基本的 jdbc 外部表统计信息收集等。
- 倒排索引查询性能优化及增强,包括增加 bkd 索引提升新能、优化多词连接查询等。
- 数据湖 multi-catalog 更友好支持多类型数据源,包括jdbc、hdfs、hive、mysql、maxcompute等。
- 数组函数优化,array_union 支持多参数。
Enterprise Core 2.0.1
发布日期:2023 年 9 月 10 日
- 完善了 array 和 map 复杂数据类型的功能和稳定性,包括内表复杂类型嵌套、外表嵌套 orc/parquet 等。
- 倒排索引查询性能提升,包括分词、数值处理、谓词下推等。
- 查询性能提升,包括 bitmap, like, scan, 聚合函数等。
- 跨集群复制 CCR 功能和稳定性完善。
- 查询优化器统计信息收集更加快速和准确,提升自动查询优化效果。
- 数据湖 multi-catalog 功能和性能增强,包括 iceberg 性能优化、复杂数据类型等。
Enterprise Core 1.2.x
Enterprise Core 1.2.8
发布日期:2023 年 9 月 5 日
- 修复若干 decimal 相关的问题。
- 修复 show tables 无法显示拥有 select 权限的表。
- 修复副本调度相关的问题。
- 修复若干查询规划问题。
- 修复某些情况下,BE 进程文件句柄泄漏的问题。
- 修复某些情况下,建表超时的问题。
- 修复读取 ORC 格式文件错误的问题。
- 修复 Broker 关闭 FileSystem 导致读取错误的问题。
- 优化 Auto Bucket 的副本大小计算逻辑。
- 修复某些情况下,Spark Load 空指针异常问题。