StarRocks-2.1 Release Notes(最新版本:2.1.13,发布日期:2022年9月6日)

发布日期: 2022年2月25日

New Features

  • 【公测中】支持通过外表的方式查询 Apache Iceberg 数据湖中的数据,帮助您实现对数据湖的极速分析。TPC-H 测试集的结果显示,查询 Apache Iceberg 数据时,StarRocks 的查询速度是 Presto 的 3 - 5 倍。相关文档,请参见 Apache Iceberg 外表
  • 【公测中】发布 Pipeline 执行引擎,可以自适应调节查询的并行度。您无需手动设置 session 级别的变量 parallel_fragment_exec_instance_num。并且,在部分高并发场景中,相较于历史版本,新版本性能提升两倍。请参见 查询并发设置
  • 支持 CTAS(CREATE TABLE AS SELECT),基于查询结果创建表并且导入数据,从而简化建表和 ETL 操作。相关文档,请参见 CREATE TABLE AS SELECT
  • 支持 SQL 指纹,针对慢查询中各类 SQL 语句计算出 SQL 指纹,方便您快速定位慢查询。相关文档,请参见 SQL 指纹
  • 新增函数 ANY_VALUEARRAY_REMOVE,哈希函数 SHA2

Improvement

  • 优化 Compaction 的性能,支持导入 10000 列的数据。
  • 优化 StarRocks 首次 Scan 和 Page Cache 的性能。通过降低随机 I/O ,提升 StarRocks 首次 Scan 的性能,如果首次 Scan 的磁盘为 SATA 盘,则性能提升尤为明显。另外,StarRocks 的 Page Cache 支持直接存放原始数据,无需经过 Bitshuffle 编码。因此读取 StarRocks 的 Page Cache 时无需额外解码,提高缓存命中率,进而大大提升查询效率。
  • 支持主键模型(Primary Key Model)变更表结构(Schema Change),您可以执行 ALTER TABLE 增删和修改索引。
  • 【公测中】支持字符串最大长度为 1MB。
  • 优化 JSON 导入性能,并去除了 JSON 导入中单个 JSON 文件不超过 100MB 大小的限制。
  • 优化 Bitmap Index 性能。
  • 优化通过外表方式读取 Hive 数据的性能,支持 Hive 的存储格式为 CSV。
  • 支持建表语句的时间戳字段定义为 DEFAULT CURRENT_TIMESTAMP。
  • 支持导入带有多个分隔符的 CSV 文件。

Bugfix

  • 修复在导入 JSON 格式数据中设置了 jsonpaths 后不能自动识别 __op 字段的问题。
  • 修复 Broker Load 导入数据过程中因为源数据发生变化而导致 BE 节点挂掉的问题。
  • 修复建立物化视图后,部分 SQL 语句报错的问题。
  • 修复 Routine Load 中使用带引号的 jsonpath 会报错的问题。
  • 修复查询列数超过 200 列后,并发性能明显下降的问题。

Behavior Change

  • 修改关闭 Colocation Group 的 HTTP Restful API。为了使语义更好理解,关闭 Colocation Group 的 API 修改为 POST /api/colocate/group_unstable (旧接口为 DELETE /api/colocate/group_stable )。
2赞

:+1::+1::+1::+1::+1::+1::+1:

2.1.2

发布日期:2022年3月14日

Bug 修复

  • 修复 从 1.19 升级到 2.1 会因 chunk size 不匹配导致 BE 崩溃的问题。#3834
  • 修复 在从 2.0 升级到 2.1 的过程中,导入任务可能会失败的问题。#3828
  • 修复 对单 tablet 的表在做聚合操作时因无法得到合理的执行计划而导致查询失败的问题。#3854
  • 修复 FE 收集信息以构建低基数全局字典时可能导致死锁的问题。#3839
  • 修复 因死锁导致 BE 节点假死且查询失败的问题。
  • 修复因 show variables 命令出错而导致 BI 工具无法连接的问题。#3708

升级2.1.1后, tidb 外表无法查询的问题在这个版本有修复嘛?

2.1.2修复了这个问题

1赞

2.1.3是修复了什么呀

发布日期:2022 年 3 月 14 日

错误修复
修复了以下错误:

BE节点处于假死状态时查询失败。
当单片表连接没有合适的执行计划时,查询失败。 #3854
当FE节点收集信息构建全局字典进行低基数优化时,可能会出现死锁问题。 #3839

这个不是2.1.2就修复了吗

2.1.3 修改了一个查询计划相关的内容,优化了查询扫描数据的调度策略

好的,谢谢!另外请教一下2.2的自定义函数功能,大概什么时候发版呀

四月应该就会发出来

原来看计划说是3月底吗

2.2版本的新features比较多,需要测试验证

请问一下新版本如何关闭CBO,之前1.18.2版本可以set enable_cbo=false;

请问遇到什么问题需要关闭CBO呢?

我们当前升级使用的版本2.0.1默认是开启CBO的, 查询性能与之前相差巨大,原因是因为新版本对rollup的选择根本就不符合预期,这个情况只有在1.18.2版本上开启CBO会出现,但是因为内存管理问题,不得不升级

你这个是 2.0.3 的,不是 2.1.3 的

2.1.3

发布日期:2022年3月19日

Bug 修复

  • 通过改进为批量 publish version,解决 BE 可能因宕机而导致数据丢失的问题。#3140
  • 修复某些查询可能因为执行计划不合理而导致内存超限的问题。
  • 修复分片副本的校验和( checksum )在不同的 compaction 过程下结果可能不一致的问题。#3438
  • 修复因 JOIN reorder projection 未正确处理而导致查询可能报错的问题。#4056

2.1.4修复什么了呀

2.1.4

发布日期:2022年4月8日

新功能

  • 新增 UUID_NUMERIC 函数,返回 LARGEINT 类型的值。相比于 UUID 函数,执行性能提升近 2 个数量级。

Bug 修复

修复了如下 Bug:

  • 在删列、新增分区、并克隆 Tablet 后,新旧 Tablet 的列 Unique ID 可能会不对应,由于系统使用共享的 Tablet Schema,可能导致 BE 停止服务。#4514
  • 向 StarRocks 外表导入数据时,如果设定的目标 StarRocks 集群的 FE 不是 Leader,则会导致 FE 停止服务。#4573
  • CAST 函数在StarRocks 1.19 和 2.1 版本中的执行结果不一致。#4701
  • 明细模型的表同时执行表结构变更、创建物化视图时,可能导致数据查询错误。#4839