数据岗位面试题更新 2026-08-05

请说明在 Apache Storm 中,Spout 和 Bolt 各自承担什么职责?

数据技术原理Apache Storm

考察说明

考查对 Storm 计算模型中数据源与处理单元基本职责的理解。

回答思路

  1. 【回答框架 1】Spout 是 Storm 中的消息源组件,负责从外部系统读取数据并转化为 Tuple 发射到拓扑中,不处理业务逻辑。
  2. 【回答框架 2】Bolt 是处理组件,接收 Tuple 后执行过滤、聚合、连接等计算,并可继续发射新 Tuple 给下游 Bolt。
  3. 【回答框架 3】拓扑中至少一个 Spout,多个 Bolt 通过流分组连接形成处理流水线,Spout 不直接传给 Spout,Bolt 不直接传给 Bolt。
  4. 【关键点 1】Spout 负责数据接入,Bolt 负责数据计算。
  5. 【关键点 2】Bolt 可以发射多个输出流。
  6. 【关键点 3】所有数据处理都在 Bolt 中完成。