flink 复杂事件_复杂的(事件)世界

flink 复杂事件

这篇博客文章试图总结CEP领域中的技术,并介绍它们的主要功能和不足。 有时似乎过度使用了CEP一词(就像'ESB'一样),下面的内容反映了我们对它的理解和理解。

ESPER( http://esper.codehaus.org/ )是流行的开源组件,可用于Java的复杂事件处理(CEP)。 它包括对基于滑动时间或长度窗口的模式匹配和流处理的丰富支持。 尽管对“ CEP”一词进行了激烈的讨论( http://www.dbms2.com/2011/08/25/renaming-cep-or-not /),但ESPER似乎非常适合CEP术语,因为借助ESPER的EPL(事件处理语言),它似乎能够从一系列简单事件中真正识别出“复杂事件”。

最近,在寻找用于实时CEP的开源解决方案时,我们的小组偶然发现了Twitter的Storm项目( https://github.com/nathanmarz/storm )。 它声称与Yahoo的S4最具有可比性,并且与Esper和Streambase等“复杂事件处理”系统处于同一空间。 我不确定Streambase,但是更深入地研究Storm项目使它看起来与CEP和ESPER解决方案大不相同。 与S4同上( http://incubator.apache.org/s4/ )。 尽管S4和Storm似乎擅长于分布式模式下的实时流处理,并且它们看上去(如他们声称的那样)是“实时Hadoop”,但它们似乎没有提供匹配模式的规定(因此表示复杂事件)。
搜索(我们的研究可能与之相关的)CEP定义导致以下项目符号( http://colinclark.sys-con.com/node/1985400 ),其中包括以下四个作为系统/解决方案的先决条件被称为CEP组件/项目/解决方案:
  • 领域特定语言
  • 连续查询
  • 时间或长度窗口
  • 时间模式匹配
在当前版本的S4和Storm项目中,似乎缺少完全支持时间/长度窗口和时间模式匹配的连续查询。 可能是由于它们的婴儿期,他们将来会逐渐成熟以包含这些功能。 到目前为止,它们似乎只适合预处理事件流,然后再将其传递给ESPER等CEP引擎。 他们的分布式处理能力(la map-reduce模式)可以帮助加快预处理速度,在此情况下,可以过滤事件,或者通过一些查找/计算等来丰富事件。还进行了一些尝试,将Storm与Esper集成( http://tomdzk.wordpress.com/2011/09/28/storm-esper/ )。

虽然像S4和Storm这样的处理系统缺少CEP的重要功能,但基于ESPER的系统具有受内存限制的缺点。 事件太多或时间窗口过长可能会导致ESPER内存不足。 如果使用ESPER处理实时流(例如来自社交媒体的实时流),则ESPER内存中将积累大量数据。 总体而言,问题陈述是为大数据发明CEP解决方案。 在更好的层面上,问题陈述包括设计CEP解决方案,以处理机载(批处理)和飞行中(实时)数据。

用DarkStar的术语( http://www.eventprocessing-communityofpractice.org/EPS-presentations/Clark_EP.pdf ),要求是“实时匹配注册的模式,在数据库中发现类似的模式”。 由于受内存限制是一个限制,因此,如果可以找到某种凝聚内存事件的机制,可能会很有用。 但是,压缩后的数据仍然应该有意义,并保留原始流的上下文。

DarkStar使用符号聚合近似值( http://www.cs.ucr.edu/~eamonn/SAX.htm )进行此操作,他们声称通过将SAX与AsterData的nCluster一起使用来满足上述要求,nCluster是mpp(大规模并行)使用基于SQL / MapReduce( http://www.asterdata.com/resources/mapreduce.php )的嵌入式分析引擎处理数据库)。

待续(随着我们的进一步研究)…

参考:来自我们的JCG合作伙伴 Abhishek Jain 的复杂(事件)世界   在NS.Infra博客上。


翻译自: https://www.javacodegeeks.com/2012/03/complex-event-world.html

flink 复杂事件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/356452.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

设计模式(中介者模式-对象去耦)

声明:本系列文章内容摘自《iOS设计模式》 中介者模式 用一个对象来封装一系列对象的交互方式。中介者使个对象不需要显式地相互调用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 何时使用中介者模式 1.对象间的交互虽定义明确然而非…

java flash截图_求大神们帮助, 如何在java中实现文字数据转换成图片或flash显示

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼protected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{response.setContentType("image/jpeg");createImage(response.getOutputStream());} private …

Spring Cloud Sidecar –节点初始化

在上一篇博客文章中,我描述了Sidecar应用程序如何用于在Eureka中注册Cassandra节点,并且更普遍地可以用于在Eureka中注册任何非JVM应用程序。 在本文中,我将介绍应用程序如何查询Sidecar注册节点。 发现注册的节点–初始化后 如果在Bean初始…

windows服务器的DDOS防御,

抵御 SYN 攻击 SYN 攻击利用了 TCP/IP 连接建立机制中的安全漏洞。要实施 SYN 洪水攻击,攻击者会使用程序发送大量 TCP SYN 请求来填满服务器上的挂起连接队列。这会禁止其他用户建立网络连接。 要保护网络抵御 SYN 攻击,请按照下面这些通用步骤操作&…

java传.net datetime_.net调java写的webService传过去的datetime,int等非string类型为null的问题...

使用.NET向webService传double、int、DateTime 服务器得到的数据时null的问题 收藏用C#.NET调用Java开发的WebService时,先在客户端封装的带有int属性的对象,当将该对象传到服务器端时,服务器端可以得到string类型的属性值,却不能…

arcengine,深入理解游标Cursors,实现数据的快速查找,插入,删除,更新

风过无痕 原文 arcengine,深入理解游标Cursors,实现数据的快速查找,插入,删除,更新 深入理解游标Cursors,实现数据的快速查找,插入,删除,更新 1、查找数据Search Cursors //by yl …

guice 框架_玩! 框架+ Google Guice

guice 框架在我目前正在工作的项目中,我们开始使用Google Guice。 对于那些不知道的人, Google Guice是一个依赖项注入框架。 依赖项注入的基本思想是提供一个其依赖的类,而不是使依赖类负责实例化它所依赖的对象。 Play具有用于整合Guice的模…

js中,实现对键盘按键的监听:

<script>function keyUp(e) { var currKey0,ee||event; currKeye.keyCode||e.which||e.charCode; var keyName String.fromCharCode(currKey); alert("按键码: " currKey " 字符: " keyName); } document.onkeyup keyUp;</scrip…

java程序运行结果题_2016年关于Java编程与程序运行结果笔试题

2016年关于Java编程与程序运行结果笔试题1.Java编程,打印昨天的当前时刻public class YesterdayCurrent{public void main(String[] args){Calendar cal Calendar.getInstance();cal.add(Calendar.DATE, -1);System.out.println(cal.getTime());}}2.文件读写,实现一个计数器pu…

Hystrix简介– Hello World

在先前的博客文章中&#xff0c;我谈到了需要像Netflix Hystrix这样的库的动机。 在这里&#xff0c;我将跳入一些非常基本的方法来开始使用Hystrix&#xff0c;并在更复杂的用例中进行后续介绍。 你好&#xff0c;世界 以下是“ Hystrix命令”的一个简单的Hello World示例&am…

Unity 继承MonoBehaviour下方法通过鼠标触控与物体交互

要通过鼠标的进入、离开、悬停、拖拽等动作实现与物体的交互时&#xff0c;我们可以使用继承MonoBehaviour的脚本下的与鼠标相关的方法。具体有以下方法&#xff1a; //当鼠标按下时被调用private void OnMouseDown(){Debug.Log("鼠标按下了");}//当鼠标按下并拖动时…

Collection中list集合的应用常见的方法

集合 &#xff1a; 用存放对象的容器(集合) Collection &#xff1a; 跟接口 &#xff1a; 单列集合 ---> List :有序的 &#xff0c;元素是可以重复的。 ---> Set : 无序的 &#xff0c;元素是不可以重复的。 Collectionz红常用的方…

js base64编码 java 解码_JavaScript字符串的Base64编码与解码

有时文本里包含一些不可打印的符号&#xff0c;而你需要把它们传输到服务器&#xff0c;这时我们会需要用到Base64编码。或者你需要把一个图片内容以文本格式嵌入到网页中&#xff0c;这时你也会用到 Base64 编码。所谓 Base64 是一种基于64个可打印字符来表示二进制数据的方法…

linux cmake 安装mysql5.5.11_以及更高版本_linux cmake 安装mysql5.5.11,以及更高版本

1、下载mysql5.5.12和cmakewgethttp://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.12-linux2.6-i686.tar.gzwget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz2、安装cmakemkdir /usr/local/cmake切换到存放cmake-2.8.4.tar.gz到目录tar zxvfcmake-2.8.4.tar.gzcd cm…

iOS中如何监测来电

http://blog.csdn.net/liujinlongxa/article/details/44207587转载于:https://www.cnblogs.com/it-k-50/p/6122844.html

maven 构建依赖树_Maven构建依赖项

maven 构建依赖树熟悉发行版和快照依赖关系的Maven和Gradle用户可能不了解TeamCity快照依赖关系&#xff0c;或者假定他们与Maven相关&#xff08;这是不正确的&#xff09;。 熟悉工件和快照相关性的TeamCity用户可能不知道&#xff0c;除了TeamCity提供的功能之外&#xff0c…

ssh图片上传 java_ssh上传并显示图片

struts部分&#xff1a;attribute"upfileForm"input"/upload/uploadfile.jsp"name"upfileForm"path"/upfile"scope"request"validate"true"type"com.yourcompany.struts.action.UpfileAction">publi…

安卓手机移动端页面为body设置overflow:hidden;不起作用

动态的改变body的样式&#xff0c;测试了可行 var scrollTop $("body").scrollTop();//body设置为fixed之后会飘到顶部&#xff0c;所以要动态计算当前用户所在高度 $("body").css({overflow:hidden,position: fixed,top: scrollTop*-1 }); $loadMask.css…

责任链设计模式示例

本文是我们名为“ Java设计模式 ”的学院课程的一部分。 在本课程中&#xff0c;您将深入研究大量的设计模式&#xff0c;并了解如何在Java中实现和利用它们。 您将了解模式如此重要的原因&#xff0c;并了解何时以及如何应用模式中的每一个。 在这里查看 &#xff01; 目录 …

HDU 5944 Fxx and string(暴力/枚举)

传送门 Fxx and string Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submission(s): 1007 Accepted Submission(s): 422 Description Problem DescriptionYoung theoretical computer scientist Fxx get a string which co…