Storm计算网站PV和UV(实现可靠处理)

需求分析 编写Storm拓扑实现可靠计算网站当日PV和UV 重点: 去重计算模式 实现可靠处理 电商常用指标之PV、UV、VV、独立IP PV(访问量):Page View, 即页面浏览量或点击量,用户每次访问即被计算一次。 UV(独立访客):Unique Visitor, 访问您网站的一台电脑客户端为一个访客。00:00-24:00内相同的客户端只会被计算一次。 VV即Visit View,访客访问的次数,用以记录所有访客一天内访问量多少次网站。 IP(独立IP):指独立IP... ... [查看更多]

Views: 325

Storm拓扑之Stream Grouping

Stream的分组策略 Stream Grouping – 定义了一个流在Bolt任务间该如何被切分,谁来处理哪些数据流,按照什么规则来分配. 随机分组 Shuffle Grouping- 随机分组, 随机派发stream里面的tuple,保证每个bolt接收到的tuple数目大致相同。 字段分组 Fields grouping – 根据指定字段的值进行分组。比如说,一个数据流根据’word’字段进行分组,所有具有相同的’w... ... [查看更多]

Views: 255

Storm 累加拓扑示例

创建Spout发送递增数字数列 创建Bolt负责计算累加结果 本地运行 本地运行完整代码 保证数据可靠处理 Spout在使用nextTuple()方法发送数据时需要传入消息ID Bolt中execute()方法中标记tuple是否处理成功 处理成功 collector.ack(input) 处理失败collector.fail(input) 注意: ack和fail方法需要锚定到发射过来的tuple上. Spout中对处理失败的元组触发回调 这里把处... ... [查看更多]

Views: 206

Kafka伪集群环境搭建

创建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 伪集群只能用于日常测试之用,根本无法满足实际的线上生产需求。而真正的线上环境需要仔细地考量各种因素,结合自身的业务需求而制定。下面我就分别从操作系统、磁盘、磁盘容量和带宽等方面来讨论一下。 操作系统 首先我们先看看要把 Kafka 安装到什么操作系统上。 目前常见的操作系统有 3 种: Linux Windows macOS。 如果考虑操作系统与 Kafka 的适配性,Linux 系统显然要比其他两个特别是 Windows 系统更加适合部署 Kaf... ... [查看更多]

Views: 282