产品经理学大数据——大数据软件框架:实时流处理框架

在大数据领域,Hadoop无疑是炙手可热的技术。作为分布式系统架构,Hadoop具有高可靠性、高扩展性、高效性、高容错性和低成本的优点。然而,随着数据体量越来越大,实时处理能力成为了许多客户需要面对的收腰挑战。Hadoop的MapReduce是一个批处理计算框架,在实时计算处理方面显得十分乏力。Hadoop生态圈终于迎来了实时流处理框架。除了实时性,流处理可以处理更复杂的任务,能够以低延时执行大部分批处理的工作任务。

  • 实时流处理框架的三个步骤

一个典型的流架构由三个步骤组成:采集->集成->分析。

  1. 采集模块组件是从各种数据源收集数据流;
  2. 集成模块组件及成各种数据流,使他们可用于直接消费;
  3. 分析模块组建用来分析消费这些流数据。

这三个步骤中,第一步是从各种数据源收集事件。这些事件来自于数据库、日志、传感器等,这些事件需要清理组织化到一个中心。第二步,在一个中心集成各种流,典型工具如Apache Kafka。Kafka提供一个broker功能,以高可靠性收集和缓冲数据,并分发到各中队不同流感兴趣的消费者那里进行分析。第三步,对流进行真正的分析,比如创建计数器实现聚合,Map/Reduce之类计算,将各种流Join仪器分析等等,提供了数据分析所需的一步到位的高级编程。

  • 各种流处理系统

在Apache下有多个流处理系统,例如:Apache Kafka、Apache Strom、Apache Spark Streaming、Apache Flink等。尽管Spark比Hadoop要快很多,但是Spark还不是一个纯流处理引擎。Spark只是一个处理小部分输入数据的快速批操作(微批处理模式)。这就是Flink与Spark流处理的区别。Spark流处理提供了完整的容错功能,并保证了对流数据进一次处理(也就是说,如果一个节点失败,它能恢复所有的状态和结果)。这是Flink和Storm所不能提供的功能。Flink和Strom的应用开发人员需要考虑数据丢失的情况,这也限制了开发人员开发复杂的应用系统。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值