13 个 Apache Storm 面试问题及答案

Storm 面试问题

以下是 Apache Storm 面试问题和答案,可帮助新手和经验丰富的开发人员候选人获得理想的工作。

免费 PDF 下载:Apache Storm 面试题


1)解释一下什么是 Apache Storm?Storm 有哪些组件?

Apache storm 是一个开源分布式实时计算系统,用于处理实时大数据分析。与 Hadoop的 批处理,Apache storm 用于实时处理,并且可以与任何编程语言一起使用。

Apache Storm 的组件包括

  • 雨云: 它充当 Hadoop 的作业跟踪器。它在集群中分发代码,上传计算以供执行,在集群中分配工作者,并监控计算并根据需要重新分配工作者
  • 动物园管理员: 它用作与 Storm 集群通信的中介
  • 主管: 通过Zookeeper与Nimbus进行交互,根据从Nimbus收到的信号执行流程。

2)为什么 Apache Storm 是实时处理的首选?

  • 易于操作: 运营风暴安静轻松
  • 非常快: 每个节点每秒可以处理 100 条消息
  • 容错: 自动检测故障并重新启动功能属性
  • 可靠: 保证每个数据单元至少执行一次或恰好执行一次
  • 可扩展性: 它运行在一组机器上

3)解释一下 Apache Storm 中数据是如何流动的?

在 Apache Storm 中,数据以流的形式流动,包含三个组件 喷嘴,螺栓元组

  • 喷口: Spout 是 Storm 中的数据源
  • 螺栓: 螺栓处理这些数据
  • 元组: 数据以元组形式传递

4)请提及 Apache Hbase 和 Storm 有什么区别?

                           阿帕奇风暴                               阿帕奇Hbase
  • 它提供实时数据处理
  • 它处理数据但不存储
  • 您将简化实时处理数据的过程,以便在需要时发出警报并采取行动
  •  它为您提供处理数据的低延迟读取,以供稍后查询
  • 它存储数据,但不存储

5)解释如何使用 Apache storm 简化日志文件?

要读取日志文件,您可以配置 喷口 并在读取日志时逐行发出。然后可以将输出分配给 Bolt 进行分析。

Apache Storm 面试问题
Apache Storm 面试问题

6) 解释 Apache Storm 中的流是什么以及流分组?

在 Apache Storm 中,流被称为 Tuple 的组或无界序列,而流分组决定了如何在 Bolt 的任务之间对流进行分区。


7) 列出 Apache storm 中的不同流分组?

  • 随机分组
  • 字段分组
  • 全局分组
  • 全部分组
  • 无分组
  • 直接分组
  • 本地分组

8) 请提及风暴应用如何有益于金融服务?

在金融服务领域,Storm 可以帮助预防

  • 证券欺诈
  • 订单路由
  • 定价
  • 违规行为
Storm 面试问题
Storm 面试问题

9)解释 Apache Storm 中的 Topology_Message_Timeout_secs 是什么?

分配给拓扑以完全处理由 spout 发布的一条消息的最大时间量。如果在给定的时间范围内未确认该消息,Apache storm 将使 spout 上的消息失败。


10)解释一下 Apache Storm 中如何完全处理消息?

通过致电 下一个元组 在 Spout 上执行过程或方法时,Storm 会从 Spout 请求一个元组。Spout 利用 SpoutoutputCollector 在给出 open 方法将元组释放到其输出流之一。释放元组时, 喷口 分配一个“消息 ID”,稍后将使用该 ID 识别元组。之后,元组将发送到消费螺栓,storm 负责跟踪生成的消息树。

如果风暴确信一个元组已被彻底处理,那么它可以调用 ACK 原诉程序 喷口 使用 Spout 提供给 Storm 的消息 ID 来执行任务。


11)解释如何使用 Storm 将输出写入文件?

在 Spout 中,当你读取文件时, FileReader 对象 in 打开() 方法,这样它就为工作节点初始化了读取器对象。并在 nextTuple() 方法中使用该对象。


12)请提及 Apache Kafka 和 Apache Storm 之间有什么区别?

  • 阿帕奇卡夫卡: 它是一个分布式、强大的消息传递系统,可以处理大量数据并允许消息从一个端点传递到另一个端点。
  • 阿帕奇风暴: 它是一个实时消息处理系统,您可以实时编辑或操作数据。Apache storm 从 Kafka 中提取数据并应用一些必要的操作。

13) 解释在 Storm 中使用字段分组时,已知字段值是否有超时或限制?

Storm 中的字段分组使用 mod hash 函数来决定向哪个任务发送元组,从而确保哪个任务将按正确的顺序处理。为此,您不需要任何缓存。因此,已知字段值没有超时或限制。

这些面试问题也会对您的口试有所帮助。 参考我们的 Apache 教程 让您的面试更具优势。

分享

一个评论

  1. 头像 阿纳托利·阿古尔尼克 说:

    11 号问题的答案是错误的。答案是关于从文件中读取数据,但问题是关于写入文件

发表评论

您的电邮地址不会被公开。 必填项 *