2.00.6

版本下载

版本号: 2.00.6     二级兼容 2.00.5

发行日期: 2022-05-09

Linux64 binary | Linux64 JIT binary | Linux64 ABI binary | Windows64 binary | Windows64 JIT binary

新功能

  • 新增函数 cells,使矩阵输出由参数 row 和 col 指定位置的元素值。

  • 新增函数 randDiscrete,支持按指定概率分布离散抽样。

  • 新增计算函数 dynamicGroupCumsumdynamicGroupCumcount,并在响应式状态引擎中增加了对应的状态函数。

  • 新增函数 createDistributedInMemoryTable 支持创建分布式共享内存表。

  • 新增分级存储功能,可以将冷数据存储到低速硬盘或者对象存储(比如 Amazon S3)上,且这些冷数据只读不可写。

  • TSDB 引擎下创建数据表的函数 createPartitionedTable 新增参数 sortKeyMappingFunction,通过为 sortColumns 引入映射函数来降低分区内时间线的个数,以提升查询性能。

  • 优化了 TSDB 引擎更新数据的性能。

  • 新增函数 toCharArray,将字符串拆分为由字符组成的向量。

  • 新增配置项 maxDynamicLocalExecutor 限制本地动态执行线程的产生频率与数量上限。

  • 新增 transaction 语句,将对单个内存表(或共享内存表)操作的多个 SQL 语句封装为一个事务。

功能改进

  • TSDB引擎下,优化了 select count(*) 查询数据表记录数的性能。

  • 减少 TSDB 引擎加载索引的耗时。

  • 提升了 SYMBOL 数据类型的读写性能。

  • 响应式状态引擎支持 cummedcumpercentile 两个窗口函数。

  • 时序引擎(createTimeSeriesEnginecreateDailyTimeSeriesEngine)新增参数 closed 来控制计算窗口的闭合边界。

  • streamEngineParser 的 keyColumn 参数取消对传入列名的大小写判断。

  • createTimeSeriesEnginecreateDailyTimeSeriesEngine 新增参数 keyPurgeFreqInSec, 用于清理长时间无数据的分组。

  • 优化时序聚合引擎自定义函数性能。

  • 通过 share 语句将普通内存表共享时,增加共享表变量名校验。

  • streamFilter 支持对普通流数据表的列数据进行过滤、分发。

  • createTimeSeriesEnginecreateDailyTimeSeriesEngine 的 metrics 支持对矩阵进行运算。

  • 以下SQL分组计算支持reshuffle:分组字段与分区字段不同,且对 select 选择的列调用了序列相关函数。

  • resample 函数的 rule 参数支持 "H", "L", "U", "min", "N" 以及 "S",且新增了参数 closed,label 和 origin,可以对分组区间进行设置。

  • byRow 函数支持输入 array vector。

  • replay 函数在执行过程中如果报错,则直接抛出异常。

  • tmbeta(T, X, Y, window), cumbeta(X, Y), rowBeta(X, Y) 函数的参数位置调整为 tmbeta(T, Y, X, window), cumbeta(Y, X), rowBeta(Y, X)

  • 在集群模式下,若 redoLogDir 配置为相同路径,则会报错。

  • contextSumcontextSum2 的输入参数是表时,只有对应列都是数值类型时才返回结果。

  • matrix 函数支持将每行都等长的 array vector 转化为矩阵。

  • 优化了生成随机整数的性能。

缺陷修复

  • 并发进行写入、查询或计算时,有时出现因 Out of memory 导致系统卡住。

  • TSDB引擎开启去重功能,实时写入的同时进行实时查询,有时返回结果不正确。(2.00.06

  • 数据持续写入 OLAP 存储引擎导致 Cache Engine 刷盘的同时进行查询,查询结果有时会不正确。

  • TSDB 引擎下,exec 语句搭配 limit 1 时,返回的是只有一个值的表,而不是一个向量。(2.00.06

  • 向 OLAP 引擎 Cache Engine 中写入数据时,若抛出非 out of memory 的异常,则会一直重试导致系统卡住。

  • suspendRecovery 后调用 moveReplicas 函数,部分 chunk 未转移。

  • 提交并行任务后重启集群,重启后有几个 chunk 一直处于 RECOVERING 状态。

  • 使用 delete 语句删除大量数据时,会出现因 checkpoint 文件写入错误信息而导致节点 crash,无法再次启动的问题。

  • createReactiveStateEngine 中开启 snapshot,当取消订阅之后再次订阅时,若 metrics 与第一次订阅不同,则会导致 server crash。

  • lookup join 引擎插入单条数据可能导致 server crash。

  • 即使写入高可用流数据表 schema 不一致,仍然会被放到持久化队列,导致 leader 切换后会报错:"Can't find the object with name"。

  • createDailyTimeSeriesEngine 如果指定 fill,会对输入表中间不包含数据的日期进行填充。

  • createDailyTimeSeriesEngine 若指定 windowSize 大于 step,fill="none",在指定 forceTriggerTime 后,没有触发最后一个滑动了 step 之后的窗口的计算。

  • 非 admin 用户可以调用 createUser 函数。

  • changePwd 没有限制新密码的长度。

  • loadText 加载数据到内存表时,若某列数据全部为中文字符,或同时包含中文字符和数字时,会忽略中文字符。

  • array vector 占用内存非常大,但没有达到 warningMemSize,出现:"out of memory" 的报错。(2.00.06

  • 使用 matrix([],[]) 语句会导致 crash。

  • exec 搭配 pivot by,若不对 exec 选择的列字段调用函数,不会生成一个矩阵,而是生成一个 table。

  • 从分布式表 exec 单列时,返回的类型为内存表。

  • randomForestClassifier 如果设置 numJobs > 1 或者 numJobs=-1,当重复使用同一个 dataSource 进行训练时,则会导致 server crash。

  • interval函数的 duration 的时间精度与实际数据的精度不匹配导致 crash。

  • keyedTable(keyColumns, table) 创建键值内存表时,若 table 存在重复键值,发生内存泄露。

  • 调用 olsEx 方法,传入一个查询结果为空的数据源后,数据节点发生 crash。

  • addFunctionView 传入自定义函数包含超过64k的字符串时,会导致 server crash。

  • mcorr, mwavg等支持矩阵计算的 m 系列函数对索引矩阵做计算时,计算结果 lable 列会丢失。

  • loadTextEx 导入数据发生异常时不报错,此为2.00.4版本引入的bug。(2.00.06

  • TSDB 存储引擎下创建数据库表,对包含 “.” 的 SYMBOL 类型字段进行值分区,查询时会忽略 sql 语句中 “.”。(2.00.06

Web客户端缺陷修复

  • web 界面启用数据节点或反复重启集群,代理节点会产生僵尸子进程。