Storm入门介绍


立即下载 离线请留言
2024-04-20
术语 数据 Bolt Stream 消息 集群 Task Spout 运行 逻辑
1 MB

Storm 介绍
周龙鹏
一、数据处理过程
Storm 的术语解释
Storm 的术语包括 Stream、Spout、Bolt、Task、Worker、Stream Grouping 和
Topology。
Stream 是被处理的数据。
Spout 是数据源。
Bolt 处理数据。
Task是运行于 Spout或 Bolt 中的线程。
Worker 是运行这些线程的进程。
Stream Grouping 规定了 Bolt 接收什么东西作为输入数据。 数据可以随机分配(术
语为 Shuffle),或者根据字段值分配(术语为 Fields),或者广播(术语为 All),
或者总是发给一个 Task(术语为 Global),也可以不关心该数据(术语为 None),
或者由自定义逻辑来决定(术语为 Direct)。Topology 是由 Stream Grouping 连
接起来的 Spout和 Bolt 节点网络。在 Storm Concepts页面里对这些术语有更详
细的描述。
(1)Topologies 用于封装一个实时计算应用程序的逻辑,类似于 Hadoop 的
MapReduce Job
(2)Stream 消息流,是一个没有边界的 tuple 序列,这些 tuples 会被以一种分
布式的方式并行地创建和处理
(3)Spouts 消息源,是消息生产者,他会从一个外部源读取数据并向 topology
里面面发出消息: tuple
(4)Bolts 消息处理者,所有的消息处理逻辑被封装在 bolts 里面,处理输入的
数据流并产生输出的新数据流,可执行过滤,聚合,查询数据库等操作
(5)Task 每一个 Spout 和 Bolt 会被当作很多 task 在整个集群里面执行,每一
个 task 对应到一个线程 .
二、 storm 集群的组件( topologies )
Storm 集群非常类似 Hadoop 集群。 Hadoop 上运行的是 MapReduce jobs,而
Storm 运行的是 topologies。Jobs和 topologies 本身是不同的,其中一个最大的
不同就是, Mapreduce job 最终会结束,而 topology 则会持续的处理消息(直到
你杀掉它)。
S


术语/数据/Bolt/Stream/消息/集群/Task/Spout/运行/逻辑/ 术语/数据/Bolt/Stream/消息/集群/Task/Spout/运行/逻辑/
-1 条回复
登录 后才能参与评论
-->