灵活数据流处理:NeuronEX 支持 JavaScript 自定义函数
目录
随着数据要素逐渐成为帮助工业企业提升智能化水平的重要助力,如何灵活采集和处理工业数据,并满足用户定制化的数据需求,成为企业数字化建设的焦点之一。
NeuronEX 是一款专为工业场景设计的边缘网关软件,具备工业设备数据采集、工业各系统数据集成、边端数据过滤分析、AI 算法集成以及数据转发和平台对接等功能,能够为工业场景提供低延迟的数据接入管理及智能分析服务,帮助用户快速洞悉业务趋势,提升运营效率和业务可持续性。
此外,NeuronEX 还支持通过插件、HTTP、gRPC 等多种方式实现自定义函数扩展与 AI 算法集成功能,通过强大的流式计算和分析能力,该功能可以灵活地适应不同的应用场景和用户需求,为智能化的数据分析和处理提供支持。
本文将重点介绍 NeuronEX 的自定义函数功能,旨在帮助用户更灵活地处理数据流,便于进行模块化的软件协作和维护。
准备工作
在开始自定义函数之前,需要创建一个数据源,作为输入流入。以 MQTT 类型的数据源作为示例,操作步骤如下:
登录到 NeuronEX 系统,进入“数据处理” - “源管理”页面。在“流管理”区域,点击“创建流”按钮。
选择 MQTT 类型,然后点击“下一步”按钮,进入到流配置页面。
在流配置页面里,填入流名称和数据源。其它配置信息可保留默认值。数据源应填入计划订阅的 MQTT 主题,以便区分不同的数据流。例如,可以填入
neuronex/func_test
,点击“添加配置组”按钮以创建新的配置组。在源配置组里,填入配置组名称和 MQTT 消息服务器地址。此次演示中,服务器地址使用由 EMQX 提供的免费公共 MQTT 服务器「https://www.emqx.com/zh/mqtt/public-mqtt5-broker 」,该服务器是由 EMQX 的 MQTT 接入平台提供,然后点击“提交”按钮,完成配置组的添加。
配置组添加完成后,可看到配置组中已选中刚才添加的
mqtt_conf
配置组,接着点击“提交”按钮即可完成数据源的创建。
创建自定义函数
用户通过创建自定义函数,可以灵活实现复杂的数据处理,这里我们举一个简单的例子,通过自定义函数去计算长方形的面积
进入“数据处理” - “算法集成”页面。在“自定义函数”区域,点击“创建自定义函数”按钮。
在创建自定义函数页面,填入函数名称和 JavaScript 脚本内容,然后点击“提交”按钮,完成自定义函数的添加。
在规则中使用自定义函数
创建好的自定义函数,可以很方便地在规则中进行使用,下面我们通过规则调试来验证刚才创建的自定义函数是否生效
进入“数据处理” - “规则”页面,点击“新建规则”按钮。
在规则新建页面,SQL 编辑器中输入如下内容,然后点击调试规则中的运行测试按钮。需要注意的是 SQL 语句中的 x 和 y,为数据流消息内容中长、宽对应的字段名。
下面打开 MQTTX 客户端,并连接到之前创建的
mqtt_conf
配置组中使用的免费公共 MQTT 服务器。建立连接后,向neuronex/func_test
主题定时发送以下格式的消息,其中 x、y 的值是随机生成的,代表长方形的长和宽。回到 NeuronEX 的规则新建页面,检查调试规则中的打印结果,可看到计算后的面积值 calArea
总结
至此,我们已经完整介绍了 NeuronEX 的自定义函数功能。通过实践,用户能更深入地理解自定义函数功能的便捷和强大,并将其应用于实际工作中,以满足不同用户的差异化数据需求,提高数据流处理的灵活性和适应性。