如何用esper扩展?

时间:2012-02-06 17:57:13

标签: amazon-ec2 scalability esper complex-event-processing

我一直在寻找Esper(和Storm)进行流处理.. Esper似乎完全按照我的意愿行事..即roling意味着,中位数,复杂查询等......但有一件事让我感到疑惑。< / p>

如何使用Esper扩展到多个实例?

据我了解,Storm处理分布式处理,但是使用Esper,你可以独立处理。

我不需要为可能的未来做到这一点,但随着我们的成长,我们的数据量也将需要扩展。我们很可能会部署在Amazon EC2中。

在将它们发送到我的Esper应用程序之前,是否需要运行多个服务器和分片数据?

是否有更优雅的方式来处理它?<​​/ p>

-Sajal

2 个答案:

答案 0 :(得分:9)

你可以在一个bolt中运行一个Esper实例,这意味着Storm将处理元组/事件联合,而Esper将处理它在给定bolt中接收的事件的CEP。

这里有一些关于在Storm bolt中嵌入Esper的代码和信息: http://tomdzk.wordpress.com/2011/09/28/storm-esper/

...然而 您需要一个支持相对无状态Esper引擎处理数据子集的用例。

例如:您按城市计算每日平均温度。如果不使用基于城市字段的shuffleGrouping分发您的元组,则每个Esper螺栓可以为每个城市提供不同的数据集。

基本上,请务必在提交此体系结构之前了解数据在Storm拓扑中的分布情况。

答案 1 :(得分:0)

从您的问题来看,似乎EsperHA是相关的?你看过那个吗?

  

EsperHA是零停机ESP / CEP事件的完整解决方案   处理。它将Esper与本地内存缓存相结合,具有弹性   溢出到磁盘或数据库和群集配置与热   备份功能。