1.基本介绍 Siddhi 提供以下功能, 流式数据分析 为分析操作员提供编排数据流、计算分析和检测 来自多个不同实时数据源的事件数据模式的软件,以允许开发人员构建能够实时感知、思考和行动的应用程序。 2.使用流程 当Siddhi 应用程序启动时: 定义输入流,输出流,编写Siddhi查询sql; 接收各种流将事件传递给查询以进行处理。 根据查询完成的处理生成新事件。 sql模式,本身支持一些函数运算; 2.量词,组合模式,连续策略较为丰富; 3.支持不发生算子; 4.时间窗口内,数据聚合在函数支持下较为方便; 5.事件流可以支持和外部存储join; 缺点: 1.使用Siddhi Streaming SQL语言将处理逻辑编写为Siddhi 应用程序,开发和维护比java代码高,在sql里数据处理/异常/监控等不够灵活可控; 2.sql模式开发,对于现有的复杂json结构数据源,
技术背景简介 Flink-Cep 是flink中的高级library,用于进行复杂事件处理,例如某一类事件连续出现三次就触发告警,可以类比Siddhi、Esper; Groovy 是一种动态脚本语言,可以让用户输入代码变成后台可执行代码
WSO2 Siddhi CEP 引擎是Eagle优先默认支持的策略引擎,同时机器学习算法也可作为另一种策略引擎执行。 扩展性。Eagle的策略引擎服务提供API允许你插入新的策略引擎。 Eagle 策略引擎默认支持WSO2的Siddhi CEP引擎和机器学习引擎,以下是几个基于Siddi CEP的策略示例。
边缘计算由WSO2 Siddhi提供支持。 设备通信支持的协议包括MQTT,HTTP,Websockets和XMPP协议以及用于添加更多协议和数据格式的IoT Server Framework扩展。
开源选项包括Esper、Siddhi CEP引擎以及Apache Storm和Apache Spark流分析项目。
上图中,使用Spark按指定的时间间隔,将持续的输入数据流划分为微批次,并输入到WSO2 Siddhi CEP引擎中。后者标识事件并使用MongoDB存储以非结构化形式存储数据。
上图中,使用Spark按指定的时间间隔,将持续的输入数据流划分为微批次,并输入到WSO2 Siddhi CEP引擎中。后者标识事件并使用MongoDB存储以非结构化形式存储数据。