分享

Storm项目:流数据监控三:流数据监控示例运行

tntzbzc 发表于 2014-11-16 14:45:32 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 2 21865
问题导读
1.数据监控示例需要做哪些准备?
2.如何配置及实现监控流数据?








1 文档说明

该文档为storm模拟项目第三份文档,第一份文档简单的介绍了模拟项目的设计,第二份文档为关键代码详解,这份文档则是示例运行的文档,从源代码打包到配置文件配置,lib文件导入,及任务提交,最后到处理数据输出到mysql中,这一整个流程。


2 示例说明
2.1 数据源

//这个数据源构造的缘由是,当年想过要建站的,关注过,所以有此。
如今网站终于建起来了,热泪盈盈啊~~~


图2.1 源数据

数据源形如以上截图,共有五个字段,字段解释则不一一说明,详见文档一。以上形式数据作为数据源。


2.2 过滤规则



图2.2 monitorBolt.xml过滤配置
设置如上过滤规则,及过滤符合以下规则的数据流:第一个字段正则匹配.*google.*,第二字段在200至2001的范围内,第五个字段符合常规模糊匹配,即字段值中包含ina几个字符。且以上三个字段逻辑关系为“AND”,即同时满足以上三个条件,数据才会被过滤出来。



2.3 数据存储

图2.3 mysqlBolt.xml存储配置
以上为mysql存储配置,mysql地址为192.168.2.240(在nimbus节点上安装有mysql),提前创建好storm数据库,在该库中创建表monitor。


3 详细步骤

3.1 配置文件

                                                 图3.1-1 配置文件路径

配置文件路径我写的是/root/hcy/jar/,将这两个xml文件放在supervisor节点的该目录下,程序运行时会去该路径查找。并且将数据源domian.log也放到该目录下。
具体配置配置方式,参考第二章中的图2.2及2.3


3.2 代码打包



图3.2 代码打包

使用eclipse中的file选项下的export选项,导出类型为Jar file。将生成的jar包放入nimbus节点下。

3.3 数据库准备

在mysql中创建出storm数据库,在该库中创建表monitor,如下:


图3.3-1 创建表monitor


图3.3-2 表描述

Ps:为省事我全部创建了char类型的哦。
注意:
必须将mysql配置成能够远程访问的。
如下:

图3.3-3 配置mysql

3.4 环境准备
3.4.1 配置

关于storm.yaml配置如下:


图3.4.1 storm.yaml配置


3.4.2 启动集群

在三个节点上启动ZK,在nimbus上启动用命令storm nimbus&启动nimbus及用storm ui&命令启动UI监控页面,在supervisor上启动storm supervisor&。
在nimbus所在机器上启动mysql。

3.5 提交任务


图3.5-1 提交任务命令

我把jar包放在nimbus下/root/hcy/jar目录下。执行以上命令,使用监控页面监控任务状态。


图3.5-2 UI监控页面

3.6 输出查询

远程登录myslq:



图3.6-1 进入storm数据库


进行过滤结果查询:

图3.6-2 10条过滤数据查询结果

4 项目扩展

下一步计划改善spout接口,计划源数据从metaq(消息队列中读取)获取,写一个metaq与storm的接口。
有兴趣的朋友请继续关注博客虫。
我会将这个模拟项目一步一步的完善,初步计划如下:
1、布置met??aq集群,写metaq与storm的接口;
2、实现线上更新(例如动态更改过滤规则);
3、部署hadoop集群,写hdfs与storm接口;
4、支持类Top N统计处理。

相关文档

Storm项目:流数据监控一流数据监控设计文档
http://www.aboutyun.com/thread-10042-1-1.html


Storm项目:流数据监控二:流数据监控代码详解
http://www.aboutyun.com/thread-10047-1-1.html

Storm项目:流数据监控四---流数据监控MetaQ接口
http://www.aboutyun.com/thread-10045-1-1.html

Storm项目:流数据监控五Zookeeper统一配置
http://www.aboutyun.com/thread-10044-1-1.html

实时处理方案架构 - Storm实时处理
http://www.aboutyun.com/thread-10043-1-1.html




本文地址:http://www.blogchong.com/post/storm_monitor_exam.html

已有(2)人评论

跳转到指定楼层
梦回三国 发表于 2015-5-27 10:06:27
其实我想问一下,你的流数据处理结果存到数据库的话,也应该能实时从数据库取出才行啊,关于这个你是怎么判断,比如哪些是最近5秒钟的处理结果的呢?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条