常用的大数据实时计算框架有哪些?在大数据技术中,有离线计算、批量计算、实时计算以及流式计算,其中,离线计算和实时计算指的是数据处理的延迟;批量计算和流式计算指的是数据处理的方式。
Web应用、网络监控、传感监测、电信金融、生产制造等领域,对数据实时处理的需求不断增强,而SpaRk中的SpaRkStReaMing实时计算框架就是为了实现对数据实时处理的需求而设计的。在电子商务中,淘宝、京东等网站从用户点击的行为和浏览的历史记录中发现用户的购买意图和兴趣,然后通过SpaRkstReaMing实时计算框架分析处理,为之推荐相关商品,从而有效地提高商品的销售量,同时也增加了用户的满意度。
那么什么是大数据实时计算?
传统的数据处理流程(离线计算),先收集数据,然后将数据存储到数据库中。当需要某些数据时,通过对数据库中的数据做操作得到所需要的数据,再进行其他相关的处理。这样的处理流程会造成结果数据密集,结果数据密集则数据反馈不及时。在实时搜索的应用场景中,需要实时数据做决策,而传统的数据处理并不能很好地解决问题,这就引出了一种新的数据计算实时计算,针对海量数据进行实时计算,无论是在数据采集还是数据处理中都可以达到秒级别的处理要求。
常用的大数据实计算框架:
目前业内已经衍生出许多实时计算数据的框架,如 Apache SpaRk StReaMing、ApacheSTorn、Apache Flink以及 Yahoo! S4。
一、Apache SpaRk StReaMing
Apache SpaRk StReaMing即Apache公司免费、开源的实时计算框架。它主要是把输入的数据按时间进行切分,并对切分的数据块进行并行计算处理,处理的速度可以达到秒级别。Netflix公司通过Kaka和SpaRkStReaMing构建了实时引擎,对每天从各种数据源接收到的数十亿数据进行分析,从而完成电影的推荐功能。
二、Apache STorM
Apache STorM即TwITteR公司免费、开源贡献给Apache的一个分布式实时计算系统。它可以简单、高效、可靠地实时处理海量数据,处理数据的速度达到毫秒级别,并可将处理后的结果数据保存到持久化介质中。阿里巴巴公司的JsTorM,就是参考ApacheSTorn开发的实时计算框架,可以说是StoM的增强版本,在网络IO、线程模型、资源调度、可用性及稳定性上都做了极大的改进供很多企业使用。
三、Apache Flink
Apache Flink即Apache公司开源的计算框架。它不仅可以支持离线处理,还可以支持实时处理。由于离线处理和实时处理所提供的SLA是完全不相同的,所以离线处理一般需要支持低延迟的保证,而实时处理则需要支持高吞吐、高效率的处理。
四、Yahoo! S4
Yahoo! S4即Yahoo公司开源的实时计算平台,通用的、分布式的、可扩展的,并且还具有容错和可插拔能力,供开发者轻松地处理源源不断产生的数据。大数据框架