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
,支持按指定概率分布离散抽样。 -
新增计算函数
dynamicGroupCumsum
和dynamicGroupCumcount
,并在响应式状态引擎中增加了对应的状态函数。 -
新增函数
createDistributedInMemoryTable
支持创建分布式共享内存表。 -
新增分级存储功能,可以将冷数据存储到低速硬盘或者对象存储(比如 Amazon S3)上,且这些冷数据只读不可写。
-
TSDB 引擎下创建数据表的函数
createPartitionedTable
新增参数 sortKeyMappingFunction,通过为 sortColumns 引入映射函数来降低分区内时间线的个数,以提升查询性能。 -
优化了 TSDB 引擎更新数据的性能。
-
新增函数
toCharArray
,将字符串拆分为由字符组成的向量。 -
新增配置项 maxDynamicLocalExecutor 限制本地动态执行线程的产生频率与数量上限。
-
新增
transaction
语句,将对单个内存表(或共享内存表)操作的多个 SQL 语句封装为一个事务。
功能改进
-
TSDB引擎下,优化了 select count(*) 查询数据表记录数的性能。
-
减少 TSDB 引擎加载索引的耗时。
-
提升了 SYMBOL 数据类型的读写性能。
-
响应式状态引擎支持
cummed
和cumpercentile
两个窗口函数。 -
时序引擎(
createTimeSeriesEngine
和createDailyTimeSeriesEngine
)新增参数 closed 来控制计算窗口的闭合边界。 -
streamEngineParser
的 keyColumn 参数取消对传入列名的大小写判断。 -
createTimeSeriesEngine
和createDailyTimeSeriesEngine
新增参数 keyPurgeFreqInSec, 用于清理长时间无数据的分组。 -
优化时序聚合引擎自定义函数性能。
-
通过
share
语句将普通内存表共享时,增加共享表变量名校验。 -
streamFilter
支持对普通流数据表的列数据进行过滤、分发。 -
createTimeSeriesEngine
和createDailyTimeSeriesEngine
的 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
配置为相同路径,则会报错。 -
contextSum
和contextSum2
的输入参数是表时,只有对应列都是数值类型时才返回结果。 -
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 界面启用数据节点或反复重启集群,代理节点会产生僵尸子进程。