快数据的三大典型应用模式

阅读数:814 2015 年 5 月 7 日

话题:语言 & 开发架构

随着互联网、物联网及电子信息技术的不断发展,智能终端数量极速增长,其所产生数据的速度也前所未有的加快。于是,大数据成为当前这个时代的一个主题词。大数据在给人们带来存储困难的同时,也蕴藏了巨大的潜在价值。目前,对数据的分析和处理,可以划分为两种模式——批处理模式和流处理模式。批处理模式是指数据库中的数据积累到一定量时统一进行分析和处理;流处理模式是指在数据流进入数据库时即刻进行分析和处理。在企业构建大数据处理框架时,这两种处理模式相辅相成,起着非常重要的作用。

快数据指的就是流处理模式中的活动数据、即时状态数据或者正在进行处理当中的数据。Ovum 公司的首席架构师Tony Baer 指出,“快数据本身并没有什么新的,但是价格和性能优势使得快数据应用被广泛采用”。快速数据在带来巨大价值的同时,也带来了处理和分析的巨大困难。快速数据的价值会随着处理时间的增加而迅速减少。这就要求处理工具要具备接近实时处理和决策的能力。而通过实时分析,企业可以通过实时交互为客户提供很好的服务、更加高效的管理系统资源以及推出新的实时业务。GigaSpaces 公司的首席技术官 Nati Shalom 明确表示,快数据必然会成为大数据之中的一项重点发展方向。目前,Oracle 等公司已经推出了自己的快数据解决方案。针对快数据,VoltDB 公司的工程副总裁JohnPiekos 对其应用场景进行了分析,总结出三大典型的应用模式——实时分析、实时决策引擎以及快速数据流水线。

所谓实时分析就是从快速数据流中实时捕捉有用的价值,为用户提供当前状态信息或者警告提示等。例如,电信公司需要同时处理来自上万或者几十万的通话请求。针对这种快数据情景,实时分析就需要对每个请求及时进行处理,获知或修改用户余额、通信双方的基本信息等。因此,这种应用模式中,数据分析和数据入库的过程要基本同时进行。数据库依赖之前消息的数据进行数据库状态的实时分析,然后能够针对一段时间的情况进行分析和整理。对于已经处理完毕的数据,数据库可以直接丢弃。

实时决策引擎与实时分析紧密相关,它面向成千上万的客户端请求,利用相应的信息和决策策略得出结果,并把结果实时反馈给客户端。以电信公司为例,应用程序需要根据实时分析的结果决定是否接通用户的此时通话请求或者在余额为零时结束通话。因此,在这种模式中,决策引擎需要快速的作出决定,而且更新余额等关键状态时要采用稳健型策略。此外,系统使用 SQL 等标准工具可以捕捉和查询系统当前状态。

最后,快数据的数据流水线模式处理来自一个或者多个源的流数据,并对数据执行实时 ETL(提取、转换、加载)操作,最后把结果发送到数据湖泊进行保存。数据流水线对数据进行验证、聚集、计数等等。

这三种典型的应用场景指出了快数据应用可能被采用的地方。作为继大数据的又一个重要概念,快数据已经受到了VoltDB 等公司的广泛关注。随着技术的进步和企业的发展,快数据应用也必然会带给人们越来越多的价值。


感谢崔康对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。