AmosCloud

Library

Have a Question?

If you have any question you can ask below or enter what you are looking for!

SparkStreaming

流式计算和微批处理

早期hadoop生态中使用storm组件作为流式计算应用开发组件

storm的编程模型topology(拓扑)

  • 拓扑中包含spout和bolt两类组件
  • spout是数据来源,负责读取外部数据,例如kafka,将数据封装为tuple,发送到下游组件
  • bolt接收上游的tuple,处理后将数据以tuple的形式发送到下游,拓扑中最后的bolt负责将数据输出到外部存储

storm的集群架构

  • storm集群是主从架构
    • 主节点nimbus
    • 从节点supervisor
    • executor 每个任务启动后的进程
    • task 任务中启动多个task线程完成具体运算

storm的优劣

优势: 最早使用基于内存运算的高性能事实计算
缺点: 仿照MR的编程模型,以及使用Java作为开发语言,导致开发过程中出现过多非业务代码。并且在运行时可能由于某个bolt的数据积压导致整个拓扑雪崩,无法有效管理故障转移。