失效链接处理 |
Apache Storm PDF 下载
本站整理下载:
提取码:02bf
相关截图:
主要内容:
Apache storm是一个分布式的实时大数据处理系统。用于在容错和水平可拓展方法中处理大量数据。 它是一个流数据框架,具有很高的摄取率,无状态。通过zk管理分布式环境和集群状态,并行地对实时数 据执行各种操作。 storm易于设置和操作,并且它保证每个消息将通过拓扑至少处理一次。 基本上Hadoop和Storm框架用于分析大数据。两者互补,在某些方面有所不同。Apache Storm执行除持 久性之外的所有操作,而Hadoop在所有方面都很好,但滞后于实时计算。下表比较了Storm和Hadoop的 属性。 Storm Hadoop 实时流处理 批量处理 无状态 有状态 主/从架构与基于ZooKeeper的协调。主节点称为nimbus,从属 节点是主管。 具有/不具有基于ZooKeeper的协调的主 从结构。主节点是 业跟踪器,从节点是任务跟踪器。 Storm流过程在集群上每秒可以访问数万条消息。 Hadoop分布式文件系统(HDFS)使用MapReduce框架来处理大 量的数据,需要几分钟或几小时。 Storm拓扑运行直到用户关闭或意外的不可恢复故障。 MapReduce作业按顺序执行并最终完成。 两者都是分布式和容错的 如果nimbus / supervisor死机,重新启动使它从它停止的地 方继续,因此没有什么受到影响。 如果JobTracker死机,所有正在运行的作业都会丢失。 Apache Storm优势: 1. Storm是开源的,强大的,用户友好的。它可以用于小公司和大公司。 2. Storm是容错的,灵活的,可靠的,并且支持任何编程语言。 3. 允许实时流处理。 4. Storm是令人难以置信的快,因为它具有巨大的处理数据的力量。 5. Storm可以通过线性增加资源来保持性能,即使在负载增加的情况下。它是高度可扩展的。 6. Storm在几秒钟或几分钟内执行数据刷新和端到端传送响应取决于问题。它具有非常低的延 迟。7. Storm有操作智能。 8. Storm提供保证的数据处理,即使群集中的任何连接的节点死或消息丢失。 Apache storm从一端读取 实时数据的原始流,将其传递通过一系列小处理单元,并在另一端输出处 理/有用的信息
Apache Storm的主要组件 组件 描述 Tuple Tuple是Storm中的主要数据结构。它是有序元素的列表。默认情况下,Tuple支持所有数 据类型。通常,它被建模为一组逗号分隔的值,并传递到Storm集群。 Stream 流是元组的无序序列。 Spouts 流的源。通常,Storm从原始数据源(如Twitter Streaming API,Apache Kafka队 列,Kestrel队列等)接受输入数据。否则,您可以编写spouts以从数据源读取数 据。“ISpout”是实现spouts的核心接口,一些特定的接口是IRichSpout, BaseRichSpout,KafkaSpout等。 Bolts Bolts是逻辑处理单元。Spouts将数据传递到Bolts和Bolts过程,并产生新的输出流。 Bolts可以执行过滤,聚合,加入,与数据源和数据库交互的操作。Bolts接收数据并发射 到一个或多个Bolts。 “IBolt”是实现Bolts的核心接口。一些常见的接口是 IRichBolt,IBasicBolt等。 拓扑Spouts和Bolts连接在一起,形成拓扑结构。实时应用程序逻辑在Storm拓扑中指定。简单地说,拓扑是 有向图,其中顶点是计算,边缘是数据流。 简单拓扑从spouts开始。Spouts将数据发射到一个或多个Bolts。Bolt表示拓扑中具有最小处理逻辑的 节点,并且Bolts的输出可以发射到另一个Bolts作为输入。 Storm保持拓扑始终运行,直到您终止拓扑。Apache Storm的主要工作是运行拓扑,并在给定时间运行 任意数量的拓扑。 任务现在你有一个关于Spouts和Bolts的基本想法。它们是拓扑的最小逻辑单元,并且使用单个Spout和Bolt 阵列构建拓扑。应以特定顺序正确执行它们,以使拓扑成功运行。Storm执行的每个Spout和Bolt称为“任 务”。简单来说,任务是Spouts或Bolts的执行。在给定时间,每个Spout和Bolt可以具有在多个单独的 螺纹中运行的多个实例。 进程拓扑在多个工作节点上以分布式方式运行。Storm将所有工作节点上的任务均匀分布。工作节点的角色是 监听作业,并在新作业到达时启动或停止进程。
流分组 数据流从Spouts流到Bolts,或从一个Bolts流到另一个Bolts。流分组控制元组在拓扑中的路由方式, 并帮助我们了解拓扑中的元组流。 随机分组 在随机分组中,相等数量的元组随机分布在执行Bolts的所有工人中。下图描述了结构
|