24.8企业版发布详情

本文介绍云数据库ClickHouse24.8企业发布的功能详情。

新特性

  • 增加了ASOF JOIN以支持full_sorting_join算法,提升排序JOIN的效率。

  • 扩展了tuple函数,现支持构造带有命名元组的查询。

  • 新增了一些函数,包括tupleNames、fuzzQuery、percent_rank、changeYear、changeMonth、changeDay、changeHour、changeMinute、changeSecondgroupConcat。

  • 在使用file表函数时,系统会自动在目录路径的末尾追加通配符*,以简化目录操作。

  • 增加了读取MULTILINESTRING几何数据的支持,使用readWKTLineString函数读取WKT格式的多行字符串。

  • Parquet文件引入了新的配置,允许用户禁用或启用写入页面索引功能。

  • 引入了Hive风格的分区机制,支持File、URL、S3、AzureBlobStorageHDFS等引擎,优化了大数据集的查询管理。

  • 新增了printf函数,提供与Spark兼容的格式化输出功能。

  • S3表引擎新增了虚拟列_etag,从而提升了对S3数据的处理效率。

  • 新增了查询缓存的命名空间机制,针对同一查询使用不同标签的情况,将其视为不同的缓存项。

  • 新增了系统表system.error_log,该表记录了system.errors表中的错误历史信息,定期写入磁盘。

  • 新增--memory-usage客户端选项,以便在非交互模式下查看内存使用情况。

性能优化

  • 优化了二进制序列化的Variant数据类型,启用紧凑模式以减少冗余数据存储。

  • 优化了S3表引擎的数据存取性能,提升了查询速度。

非兼容变更

  • 禁止在Replicated数据库中使用CREATE MATERIALIZED VIEW ... ENGINE Replicated*MergeTree POPULATE AS SELECT语法。

  • 在之前的版本中,支持LowCardinality数据类型的备选语法(通过WithDictionary后缀)已被弃用。建议您对表结构进行修改,采用标准的LowCardinality数据类型。

bug修复

  • 修复了使用Buffer存储与分布式目标表配合时出现的逻辑错误,尤其是在查询中使用表的多次引用时可能导致查询失败的问题。

  • 修复了基于Gamma函数(如Chi-Squared、Student、Fisher)的随机分布函数在使用接近零的负数参数时,导致长时间计算或死循环的问题。

  • 优化了arrayWithConstant函数处理大数组时的性能,限制了每个数组的最大大小为 1 GB。

  • 修复了低级内存管理中出现的格式问题,提升了内存分配的稳定性。

  • 解决了使用Buffer存储时与分布式目标表的兼容性问题。

  • 修复了join操作中与IS NULL条件相关的优化错误。