Stream Grouping定义了一个流在Bolt任务间该如何被切分。这里有Storm提供的6个Stream Grouping类型:
1. 随机分组(Shuffle grouping):随机分发tuple到Bolt的任务,保证每个任务获得相等数量的tuple。
2. 字段分组(Fields grouping):根据指定字段分割数据流,并分组。例如,根据“user-id”字段,相同“user-id”的元组总是分发到同一个任务,不同“user-id”的元组可能分发到不同的任务。
3. 全部分组(All grouping):tuple被复制到bolt的所有任务。这种类型需要谨慎使用。
4. 全局分组(Global grouping):全部流都分配到bolt的同一个任务。明确地说,是分配给ID最小的那个task。
5. 无分组(None grouping):你不需要关心流是如何分组。目前,无分组等效于随机分组。但最终,Storm将把无分组的Bolts放到Bolts或Spouts订阅它们的同一线程去执行(如果可能)。
6. 直接分组(Direct grouping):这是一个特别的分组类型。元组生产者决定tuple由哪个元组处理者任务接收。
当然还可以实现CustomStreamGroupimg接口来定制自己需要的分组。
相关推荐
02_流式计算基础_第1天 (Storm集群部署、单词计数、Stream Grouping).docx
它的设计目标是提供低延迟、高可靠性和可扩展性的实时计算服务。在物联网系统中,实时处理大量涌入的数据变得至关重要,Storm能够有效地处理这些数据流,进行实时分析和决策。 Storm的主要特点包括: 1. **分布式*...
《Storm实战构建大数据实时计算》是阿里巴巴技术丛书的一部分,这本书不仅是对Apache Storm技术的系统性介绍,而且注重实践和操作性,旨在帮助读者深入理解Storm技术体系,并能够将所学知识应用于实际的大数据实时...
Storm是一个开源的实时计算系统,它的设计理念和传统的大数据处理框架MapReduce不同。MapReduce是批量处理,而Storm是流处理,它关注的是数据的持续处理和实时性,能够实现实时计算和连续计算的业务需求。Storm的...
Storm可以方便地在一个计算机集群中编写与扩展复杂的实时计算,Storm之于实时处理,就好比Hadoop之于批处理。Storm保证每个消息都会得到处理,而且它很快——在一个小集群中,每秒可以处理数以百万计的消息。更棒的...
Apache Storm 是一款免费且开源的分布式实时计算系统。它专为处理无界数据流而设计,能够实现实时数据处理任务,具备低延迟、高可用、分布式的特性,并支持线性扩展以及确保数据处理过程中数据的零丢失。 **实时...
Storm是一个分布式实时计算系统,由Twitter开源并广泛应用于实时数据处理领域。本笔记主要围绕Storm的核心概念、起源、架构、组件、原理以及应用场景进行详细讲解。 **一、Storm概念** Storm设计的目标是使实时...
Apache Storm是一个开源的分布式实时计算系统,它用于处理大量的数据流。Storm集群的主要组成部分包括Spout和Bolt。Spout负责从数据源获取数据流,而Bolt负责处理数据流。Storm架构设计支持可扩展性,容错性和可靠的...
Apache Storm作为一种开源的实时计算框架,由Twitter开发,为解决大规模实时数据分析提供了有效工具。与Hadoop的批处理不同,Storm提供了一个分布式、高容错的计算系统,确保所有数据得到实时处理,而不仅仅是批量...
Apache Storm 是一个分布式实时计算系统,它被设计用于处理大规模数据流,提供高吞吐量、低延迟的数据处理能力。在大数据领域,Storm 被广泛应用于实时分析、在线机器学习、持续计算、数据集成以及任何需要实时处理...
Apache Storm 是一个开源的分布式实时计算系统,它允许开发者处理无界数据流,即源源不断地流入系统的连续数据。这个系统的设计灵感来源于Yahoo!的Pregel和Hadoop,但与Hadoop不同,Storm专注于实时计算,而非批处理...
标题中的"storm-0.8.1压缩包"指的是Apache Storm的一个特定版本,0.8.1,这是一个分布式实时计算系统。Apache Storm被广泛应用于实时数据处理,它允许多个数据流在分布式环境中进行连续计算,确保每个消息都被正确...
Storm是一款开源的分布式实时计算系统,它允许用户进行连续的、无状态的数据处理,尤其适合实时分析和大数据实时处理场景。 **一、Storm的安装与配置** 1. **Zookeeper集群搭建**:Zookeeper是Storm集群中的关键...
Storm是一个开源的分布式实时计算系统,它是由Nathan Marz等人在Twitter工作期间开发的。Storm的主要优势在于简单、可靠、可以线性扩展到大量的机器上。它的设计目标是能简单、可靠地处理大量数据,并且可以无缝地...
Apache Storm是一个开源的分布式实时计算系统,它能够处理无界数据流,确保每个事件都得到正确的处理,即使在高并发和大规模数据输入的情况下也能保持高效。 **一、Storm简介** Apache Storm的核心概念包括:拓扑...
Storm 是一个开源的分布式实时计算系统,由Twitter开发并贡献给Apache软件基金会。它允许开发者处理无界数据流,就像处理数据库查询一样简单。在大数据领域,Storm是一个非常重要的工具,尤其适用于实时分析、在线...
Storm是Apache软件基金会的一个分布式实时计算系统,它允许开发者编写可以处理实时数据流的应用程序。在深入探讨Storm的测试源码之前,我们首先需要理解Storm的基本概念和架构。 Storm的核心概念包括拓扑(Topology...