Stream的分组策略 Stream Grouping – 定义了一个流在Bolt任务间该如何被切分,谁来处理哪些数据流,按照什么规则来分配. 随机分组 Shuffle Grouping- 随机分组, 随机派发stream里面的tuple,保证每个bolt接收到的tuple数目大致相同。 字段分组 Fields grouping – 根据指定字段的值进行分组。比如说,一个数据流根据’word’字段进行分组,所有具有相同的’w... ... [查看更多]
Views: 255
Stream的分组策略 Stream Grouping – 定义了一个流在Bolt任务间该如何被切分,谁来处理哪些数据流,按照什么规则来分配. 随机分组 Shuffle Grouping- 随机分组, 随机派发stream里面的tuple,保证每个bolt接收到的tuple数目大致相同。 字段分组 Fields grouping – 根据指定字段的值进行分组。比如说,一个数据流根据’word’字段进行分组,所有具有相同的’w... ... [查看更多]
Views: 255
创建Spout发送递增数字数列 创建Bolt负责计算累加结果 本地运行 本地运行完整代码 保证数据可靠处理 Spout在使用nextTuple()方法发送数据时需要传入消息ID Bolt中execute()方法中标记tuple是否处理成功 处理成功 collector.ack(input) 处理失败collector.fail(input) 注意: ack和fail方法需要锚定到发射过来的tuple上. Spout中对处理失败的元组触发回调 这里把处... ... [查看更多]
Views: 206
创建Zookeeper集群(3个) 前提是已经装好Java JDK8+并配置好环境变量。 建议Kafka集群使用专有的Zookeeper集群进行协调管理。 也可以使用Kafka内置的bin/zookeeper命令启动集群, 默认配置是config/zookeeper.properties 创建3个zk配置文件 修改配置文件内容如下 根据配置创建对应的dataDir以及dataLogDir,并在dataDir下创建myid文件。 修改Kafka集群配置 vi server-1... ... [查看更多]
Views: 364
只有单台机器构成的 Kafka 伪集群只能用于日常测试之用,根本无法满足实际的线上生产需求。而真正的线上环境需要仔细地考量各种因素,结合自身的业务需求而制定。下面我就分别从操作系统、磁盘、磁盘容量和带宽等方面来讨论一下。 操作系统 首先我们先看看要把 Kafka 安装到什么操作系统上。 目前常见的操作系统有 3 种: Linux Windows macOS。 如果考虑操作系统与 Kafka 的适配性,Linux 系统显然要比其他两个特别是 Windows 系统更加适合部署 Kaf... ... [查看更多]
Views: 282
绝对路径 总是从根路径开始的路径 /.... 家目录~也可以认为是绝对路径 缺点: 有时候会写很长 优点: 不受当前位置显示, 可以在任何位置使用相同的绝对路径找到相同的文件. 相对路径 基于当前位置: 以./或者../开始的路径(其中./可以省略) . 表示当前目录 .. 表示上级目录 使用相对路径好处是, 当我们当前位置和目标路径近时,可以大大简化路径书写 坏处就是: 相对路径是基于当前位置和目标路径的相对位置的, 如果相对位置发生变化则路径会失效. 环境变量 在Lin... ... [查看更多]
Views: 142