ief
工业IoT边缘实时流分析
更新时间:2021/01/29 GMT+08:00
边缘设备可以产生大量的数据,为了减少数据上云的数据量或提高数据处理实时性,有时需要在靠近数据产生的地方对其进行分析处理。智能边缘平台可以和数据湖探索服务结合,通过在边缘节点上部署系统提供的流计算应用,将实时流计算能力从云端延伸到边缘。然后通过数据湖探索服务编辑流处理作业并下发到边缘执行,可以帮助您在边缘快速实现对流数据的实时、快速、准确地分析处理。
图1 边缘实时流分析


前提条件
- 已开通智能边缘平台和DLI服务。
- 已成功创建边缘节点和纳管边缘节点。
部署应用
- 登录IEF管理控制台。选择左侧导航栏的“边缘市场 > 边缘应用”,选择“边缘Flink”应用,单击“部署应用”。关联边缘节点,填写输入参数,参数规格不得小于默认值,否则会部署失败。
- 登录DLI控制台。选择左侧导航栏的“作业管理”,进入“作业管理”页面。
- 单击右上角“创建作业”页面。
- 配置作业信息,选择“类型”为“Flink Edge SQL”,填写“名称”,描述、模板和标签均为可选填内容,若使用已存在的模板创建作业,可帮助您快速完成新建。
- 单击“确认”,进入“编辑”页面。
- 根据需要编辑Flink SQL边缘作业,处理边缘设备数据。当前支持edgehub类型 、encode为json或csv的输入输出,具体SQL语法可参考Flink SQL语法参考。
参考示例:功能为输出学生成绩大于或者等于80分的姓名和成绩。
create source stream student_scores(name string, score int) with ( type = "edgehub", topic = "abc", encode = "json", json_config = "score = student.score; name=student.name" ); create sink stream excellent_students(name string, score int) with ( type = "edgehub", topic = "abcd", encode = "csv", field_delimiter = "," ); insert into excellent_students select name, score from student_scores where score >= 80;
- 在界面右侧选择作业所需并行数和作业所属边缘计算组,支持选择多个边缘计算组部署作业。
- 单击界面右上角“启动”,进入作业费用清单界面,单击“立即”。可在作业管理界面查看作业运行状态,单击具体作业可查看作业详情、作业监控、执行计划等信息。
验证作业运行效果
- 登录任一节点(该节点需与边缘节点网络互通),安装mosquitto软件。
mosquitto软件的下载请参见https://mosquitto.org/download/。
- 执行如下命令订阅数据。
mosquitto_sub -h 127.0.0.1 -t abcd
abcd为作业中定义的topic名称。
- 打开一个新的窗口,执行如下命令发布数据。
mosquitto_pub -h 127.0.0.1 -t abcd -m '{"student":{"score":90,"name":"1bc2"}}'
abcd为作业中定义的topic名称。
数据发布后,在2中订阅就能收到对应的数据。
