storm介绍,核心组件,编程模型
一、流式计算概念 利用分布式的思想和方法,对海量“流”式数据进行实时处理,源自业务对海量数据,在“时效”的价值上的挖掘诉求,随着大数据场景应用场景的增长,对流式计算的需求愈发增多,流式计算的一般架构图如下: Flume获取数据-->Kafka传递数据-->Strom计算数据-->Redis保存数据 二、storm介绍 Apache Storm是一个分布式实时大数据处理系统。Storm设计用于在容错和水平可扩展方法中处理大量数据。它是一个流数据框架,具有最高的摄取率。Storm是无状态的,它通过Apache ZooKeeper管理分布式环境和集群状态。它很简单,您可以并行地对实时数据执行各种操作,成为实时数据分析的领导者。 通俗的说,Storm用来实时处理数据,特点:低延迟、高可用、分布式、可扩展、数据不丢失。提供简单容易理解的接口,便于开发。 三、storm应用场景和典型案例 应用场景: (1)监控日志分析: 从海量日志中分析出特定的数据,并将分析的结果用来辅佐决策,或存入外部存储器。 (2)用户行为: 实时分析用户的行为日志,将最新的用户属性反馈给搜索引擎,能够为用户展现最贴近其当前需求的结果。 (3)用户画像: 收集,维护用户兴趣,并在此基础上向对应受众的用户投放不同的数据和信息。 典型案例: (1)广告投放: