1、边缘计算专场黄济泳 2021年08月01日本期议题:基于 Kuiper 和 KubeEdge 的边缘流数据分析Agenda开源 IOT 边缘流数据分析:LF Edge eKuiper使用 eKuiper 进行边缘流数据分析KubeEdge+eKuiper:云边协同的流处理方案eKuiper 开源社区现状与未来规划流式分析流式分析对无限的数据流进行状态分析的软件或者框架对流数据进行管理、监控和实时分析典型运行在云端Apache Flink&Spark 不适合边缘端流式分析时延数据安全带宽成本边缘流式分析的挑战轻量级和高效:边缘端 CPU 和内存受限敏捷与灵活:需要用更加敏捷的方式实现业务支持,避
2、免复杂的编码和编译等工作部署和管理:非集中,在弱网情况下的分布式部署流式分析在边缘端LF Edge eKuiper2021 年 6 月份加入 LF Edge首个由国内初创公司贡献的项目eKuiper 项目主要里程碑June 2021:LF Edge Stage 1 At LargeMay 2021:发布 1.2.0,支持ML/AI 函数调用Feb,2021:发布 1.1.1,支持二进制数据处理Oct,2020:发布 1.0.0,第一个稳定的主版本Jul,2020:发布 0.5.1,与 KubeEdge 集成Apr,2020:发布 0.3.2,与 EdgeX Foundry 集成Oct,2019
3、:开源并发布第一个版本开源 IoT 边缘分析eKuiper 概述二进制可安装包和 Docker 镜像8MB 安装包;10MB 初始内存使用X86 AMD*32,X86 AMD*64;ARM*32,ARM*64;PPCLinux 发行版,OpenWrt Linux,MacOS 与 Docker性能树莓派 3B+TPS:12kCPU:sys+user 70%内存:20MeKuiper 数据 ETL数据抽取(extract):sources数据转换(transformation):使用 SQL 进行分析+转换数据存储(load):sinks为边缘流处理而生*详情参考 https:/ 快速上手创建流创
4、建规则提交、运行规则使用 eKuiper 3步骤createstreamdemo()WITH(FORMAT=JSON,DATASOURCE=$hw/events/device/+/twin/update)sql:SELECTdata-tag1-valueAStemperature,data-tag2-valueAShumidityFROMdemo,actions:log:,mqtt:server:tcp:/broker.emqx.io:1883,topic:devices/result,qos:1,clientId:demo_001curl-XPOSThttp:/$kuiper_server:
5、9081/rules-HContent-Type:application/json-d$my_ruleSQL分析函数数学:sin,cos,abs,log,mod etc;共计 25个函数字符串:concat,substring etc;共计 19个函数汇聚:avg,count,max,min,sum,collect&deduplicate;共计 7 个函数Conversion/Encoding&decoding/Hashing/JSON processing/其它;共计 18个函数二进制处理:resize,thumbnail;共计 2 个函数GeoHash函数,共计10个函数过滤WHERE/C
6、ASE WHENJoin(LEFT|RIGHT|FULL|CROSS JOIN)Streams:动态流动数据Tables:静态数据,经常用于关联更多别的数据。如提供用户 id,获取相关的名字WindowTumbling/Hopping/Sliding/Session/CountGroup By&Order By内置支持SQL分析能力扩展自定义函数与普通内置函数相同,都可以在SQL中使用使用配置方式扩展,调度已有服务方便快速,推荐使用微服务架构,语言无关,崩溃不影响主程序配置 json 和 proto 文件支持 gRPC,REST,msgpack RPC使