IoTDB 企业版 v1.3.0 发布 | 新增内生机器学习框架 AINode、权限模块全面升级等内容

IoTDB 企业版 v1.3.0 版本正式发布!

V1.3.0 是 IoTDB 企业版在产品迭代中的一次较大的版本升级,本版本发布了全新内生机器学习框架 AINode,全面升级权限模块支持序列粒度授予权限,并对视图、流处理等功能进行诸多细节优化,进一步提升了产品的使用易用度,并增强了版本稳定性和各方面性能。

更多关于 v1.3.0 信息,欢迎查看结尾联系方式,联系天谋科技!

主要亮点:AINode 内生机器学习框架

AINode 是什么?

AINode 是 IoTDB 在 ConfigNode、DataNode 后提供的第三种内生节点,该节点通过与 IoTDB 集群的 DataNode、ConfigNode 的交互,扩展了对时间序列进行机器学习分析的能力,支持从外部引入已有机器学习模型进行注册,并使用注册的模型在指定时序数据上通过简单 SQL 语句完成时序分析任务的过程,将模型的创建、管理及推理融合在数据库引擎中。目前已提供常见时序分析场景(例如时序预测、异常检测等)的机器学习算法或自研模型。

企业版1.3发布图1-20231215.png

AINode 的优势有哪些?

优势一:简单易用。

无需使用 Python 或 Java 编程,使用 SQL 语句即可完成机器学习模型管理与推理的完整流程。如创建模型可使用 CREATE MODEL 语句、使用模型进行推理可使用 CALL INFERENCE(...) 语句等,使用更加简单便捷。

优势二:无需数据装卸,推理更加实时。

使用 IoTDB 原生机器学习可以将存储在 IoTDB 中的数据直接应用于机器学习模型的推理,无需将数据移动到单独的机器学习服务平台,从而加速数据处理、提高安全性并降低成本。

企业版1.3发布图2-20231215.png

优势三:内置先进算法。

支持业内领先机器学习分析算法,覆盖典型时序分析任务,为时序数据库赋能原生数据分析能力。如:

  • 时间序列预测(Time Series Forecasting):从过去时间序列中学习变化模式;从而根据给定过去时间的观测值,输出未来序列最可能的预测。

  • 时序异常检测(Anomaly Detection for Time Series):在给定的时间序列数据中检测和识别异常值,帮助发现时间序列中的异常行为。

  • 时间序列标注(Time Series Annotation):为每个数据点或特定时间段添加额外的信息或标记,例如事件发生、异常点、趋势变化等,以便更好地理解和分析数据。

AINode 能做什么事情?

以电力负载的预测场景为例。

在部分工业场景下,会存在预测电力负载的需求,预测结果可用于优化电力供应、节约能源和资源、支持规划和扩展以及增强电力系统的可靠性。

我们所使用的 ETTh1 的测试数据集进行预测(来源:[ETTh1](https://alioss.timecho.com/docs/img/ETTh1.csv))。该数据集中包含间隔 1h 采集一次的电力数据,每条数据由负载和油温构成,分别为:High UseFul Load, High UseLess Load, Middle UseLess Load, Low UseFul Load, Low UseLess Load, Oil Temperature。

企业版1.3发布图3-20231215.png

在该数据集上,IoTDB-ML 的模型推理功能可以通过以往高中低三种负载的数值和对应时间戳油温的关系,预测未来一段时间内的油温,赋能电网变压器的自动调控和监视。

将 ETTh1 数据集导入 IoTDB,导入 huggingface 上已经训练好的深度学习模型 DLinear(huggingface 模型地址:https://huggingface.co/hvlgo/dlinear/resolve/main),使用下列 SQL 调用该模型对数据进行推理,即可得到预测数据:

IoTDB> call inference(dlinear_example, "select s0,s1,s2,s3,s4,s5,s6 from root.eg.etth", window=head(96))
+-----------+----------+----------+------------+---------+----------+----------+
|    output0|   output1|   output2|     output3|  output4|   output5|   output6|
+-----------+----------+----------+------------+---------+----------+----------+
|  10.319546| 3.1450553|  7.877341|   1.5723765|2.7303758| 1.1362307|  8.867775|
|  10.443649| 3.3286757| 7.8593454|   1.7675098| 2.560634| 1.1177158|  8.920919|
|  10.883752| 3.2341104|   8.47036|   1.6116762|2.4874182| 1.1760603|  8.798939| 
......
|  8.0115595| 1.2995274| 6.9900327|-0.098746896|  3.04923|  1.176214|  9.548782|
|   8.612427| 2.5036244| 5.6790237|  0.66474205|2.8870275| 1.2051733|  9.330128|
|  10.096699|  3.399722|    6.9909|   1.7478468|2.7642853| 1.1119363|  9.541455|
+-----------+----------+----------+------------+---------+----------+----------+
Total line number = 48

我们将对油温的预测的结果和真实结果进行对比,可以得到以下的图像,其中黄色线条为模型给出的油温预测结果,而蓝色为数据集中实际的油温数据(用于进行对比)。可视化后预测曲线与实际结果在趋势上保持了较高程度的一致性。

企业版1.3发布图4-20231215.png

其他功能

新功能 &功能优化

  • 新增 AINode 内生机器学习模块

  • 升级权限模块,支持时间序列粒度的权限设置

  • 支持客户端与服务器 SSL 通讯加密

  • 流处理模块新增多种 metrics 监控项

  • 非可写视图序列支持 LAST 查询

  • 优化数据点监控项统计准确性

  • 优化 show path 语句返回时间长的问题

...

修复 Bug

  • group by year 时支持对闰年的判断

  • 修复部分路径中带*时的报错问题

  • 修复网络分区环境下 Show Cluster 出现 NPE 的问题

  • 修复对齐序列 Flush 时有概率造成数据点丢失的问题

  • 修复重启恢复后有可能出现空文件的问题

...

更多内容推荐:

了解如何使用 IoTDB 企业版