前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Apache Spark和EVAM构建实时流式解决方案

使用Apache Spark和EVAM构建实时流式解决方案

作者头像
anthlu
发布2018-01-11 16:14:29
1.2K0
发布2018-01-11 16:14:29

http://spark.apache.org 是一个围绕速度,易用和复杂分析的开源的大数据处理框架。Spark日益流行,它支持批处理和流式处理,图形数据,机器学习,以及Hadoop和map/reduce。这是一个探索实时事件处理的理想平台。

EVAM是实时事件处理方面的领先企业,拥有超过40个解决方案,为全球2亿多终端用户提供实时事件处理。近年来,EVAM一直在探索使用流行功能的客户解决方案,比如AWS Kinesis和RedShift,在本文中我们将探讨基于Apache Spark和EVAM事件处理引擎的解决方案体系结构。

实时事件处理要求:

实时客户互动系统提出了一套严格的要求,以50毫秒内的“事件到行动”为中心。通过选择性数据集成可以实现这种响应水平,将技术活动以对客户和业务有用的方式组合。一般要求包括:

  1. 与任何来源的数据集成,包括点击流,日志,交易系统,IoT,Twitter等
  2. 通过Kafka,Kinesis和其他系统实时摄取
  3. 将事件和非事件与时间窗口和客户配置文件数据相结合的事件处理,以触发操作。为了本文的目的,我们将把每个这样的组合称为“场景”。
  4. 有数以百计的情景,有必要对行为进行约束和优先排序。例如,与客户支持相关的行动可能优先于“新报价”行动。
  5. 实现一个场景的一系列事件应作为其他场景的输入。
  6. “事件到行动”的时间延迟不应该超过50毫秒

实时事件处理的概念模型:

在过去的十年中,我参与了实时事件解决方案,我了解到实时客户参与的业务抽象层的重要性。业务抽象层根据对业务有意义的术语来定义事件,并为业务分析师定义和实现场景创造机会。

一个模型是关注于一个产生事件的“演员”。演员通常是一个人,但可以是网络上的设备(IOT或CPE)。事件起源于技术事件,这些技术事件被组合在一起构成“商业”事件。例如,新客户的创建可以涉及在关系数据库中创建多个表格,每个表格被单独识别为事件,但是被组合形成“客户创建”事件。

一个强大的模型包含对非事件的支持,以及随时间的推移聚合事件。非事件可以包括在特定时间窗口内未在网络上注册的新设备或服务的购买。认识到事件的缺乏对于业务系统来说可能至关重要。

由此产生的行为需要诸如姓名,电子邮件地址和其他“演员”数据的上下文,以通过电子邮件或其他渠道进行参与。

evam-customer-engagement-model.png
evam-customer-engagement-model.png

最后,支持情景的优先次序和约束是很重要的。“技术支持”情景中的客户可能与其他客户的处理方式不同。同样重要的是,客户不会受到多种行为的淹没,因为在短时间内触发多种情况是相当常见的。针对场景的有效管理策略是在Spark或其他开源框架之上构建健壮的实时参与解决方案所面临的众多挑战之一。

除了对场景的全球约束进行优先级排序和支持外,使用实时仪表板监视场景也很重要。监视场景可以引起增强和优化,如果通过模板可以访问场景,可以轻松实现监视场景,以便轻松更新参数。

把它们全部放在一起:

与企业大数据战略相关的挑战之一就是简单地组织用例范围和技术要求。在本文中,我们专注于支持客户(和设备)参与的复杂实时事件处理,相应地需要识别事件,非事件,时间窗口与客户档案数据的组合以及优先级重叠以及对不同场景的限制。

Spark提供了一个理想的框架,为数据集成,技术事件处理和一系列批处理过程提供全行业编程支持。在解决方案体系结构中,Spark为EVAM事件引擎提供了一个有效的前端,它提供了一个业务事件抽象,适用于复杂场景的支持。

evam-and-spark-architecture.png
evam-and-spark-architecture.png

EVAM事件处理引擎很容易与基于云的设计集成(在另一篇文章中,我们将概述如何将EVAM与AWS Kinesis,RedShift和其他服务一起用于服务全球无线运营商)。在本文中,我们重点介绍了EVAM如何与Apache Spark集成。

在此体系结构中,EVAM托管实时事件的内存弹性缓存以及用于场景识别的关联业务规则。EVAM设计包括一个Visual Scenario设计器,它使用Spark技术事件的输入来识别更高级别的业务事件。EVAM的设计考虑到了复杂的情况,可以包括实时事件,非事件,时间窗口以及客户资料数据(客户名称,电子邮件,地址,付款状态)的混合。EVAM也非常适合充当现有传统事件处理系统的“企业事件中心”,以便集中查看事件和相关操作。

结论:

实时事件处理是一个令人兴奋的空间。在技术上是有趣的,但也被证明是真正的商业价值的实际解决方案。这些系统并没有收集“一切”,而是专注于实时事件收集以支持特定的情景。数据收集的重点是,通过相关的实时行为产生对客户行为的即时洞察。这些系统减少客户流失,降低客户支持,并改善交叉销售和收入。

Apache Spark将继续流行,因为它提供了一个日益成熟的实时数据收集框架,支持一系列批处理功能,包括Graph,Hadoop等。然而,在Spark上提供一个有效的实时事件管理系统将是一件大事。这样的系统需要用于事件识别的逻辑,其包括实时事件,非事件,时间窗口和客户资料数据。在Spark上开发这样一个系统,以及优先和限制场景的灵活性对大多数团队来说都不是一个现实的目标。

一个切实的方法将使用Spark和已验证的企业实时事件处理引擎(如EVAM提供的)一起使用。我的公司EVAM是实时事件处理领域的领导者,有超过四十家企业依靠EVAM来支持超过两亿的最终用户。在另一篇文章中,我们将探讨如何在AWS上部署EVAM,使用Kinesis,RedShift和其他服务为全球无线运营商提供实时事件解决方案。

要了解有关Real Time Streaming解决方案的更多信息,请访问我们的网站,让我们知道我们可以如何帮助 http://www.evam.com

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据集成
数据集成(DataInLong)源于腾讯开源并孵化成功的 ASF 顶级项目 Apache InLong(应龙),依托 InLong 百万亿级别的数据接入和处理能力支持数据采集、汇聚、存储、分拣数据处理全流程,在跨云跨网环境下提供可靠、安全、敏捷的全场景异构数据源集成能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档