Flume-ng与Mysql整合开发
Posted 过往记忆大数据
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flume-ng与Mysql整合开发相关的知识,希望对你有一定的参考价值。
如果本文的内容对您的学习和工作有所帮助,不妨支付宝赞助(wyphao.2007@163.com)一下:
我们知道,Flume可以和许多的系统进行整合,包括了Hadoop、Spark、Kafka、Hbase等等;当然,强悍的Flume也是可以和mysql进行整合,将分析好的日志存储到Mysql(当然,你也可以存放到pg、oracle等等关系型数据库)。
不过我这里想多说一些:Flume是分布式收集日志的系统;既然都分布式了,数据量应该很大,为什么你要将Flume分析出来的数据用Mysql进行储存?能否在下面评论处留下你的使用场景呢?
如果想及时了解Spark、Hadoop或者Hbase相关的文章,欢迎关注微信公共帐号:iteblog_hadoop
其实,Flume和Mysql进行整合开发的过程也是相当的简单的。代码如下:
代码太长,格式不好,请到 http://www.iteblog.com/archives/1109查看
pom文件中的依赖:
03 |
<groupId>org.apache.flume</groupId> |
04 |
<artifactId>flume-ng-core</artifactId> |
08 |
<groupId>org.apache.flume</groupId> |
09 |
<artifactId>flume-ng-configuration</artifactId> |
13 |
<groupId>mysql</groupId> |
14 |
<artifactId>mysql-connector-java</artifactId> |
15 |
<version> 5.1 . 25 </version> |
19 |
<groupId>org.slf4j</groupId> |
20 |
<artifactId>slf4j-api</artifactId> |
24 |
<groupId>org.slf4j</groupId> |
25 |
<artifactId>slf4j-log4j12</artifactId> |
运行程序时,先在Mysql中创建一个表
1 |
mysql> create table mysqltest( |
2 |
-> id int ( 11 ) NOT NULL AUTO_INCREMENT, |
3 |
-> content varchar( 50000 ) NOT NULL, |
5 |
-> ) ENGINE=InnoDB AUTO_INCREMENT= 4 DEFAULT CHARSET=utf8; |
6 |
Query OK, 0 rows affected, 1 warning ( 0.05 sec) |
然后在flume中创建以下配置
04 |
# bolg: http: //www.iteblog.com |
05 |
# 本文地址:http: //www.iteblog.com/archives/1109 |
06 |
# 过往记忆博客,专注于hadoop、hive、spark、shark、flume的技术博客,大量的干货 |
07 |
# 过往记忆博客微信公共帐号:iteblog_hadoop |
09 |
agent.sinks.mysqlSink.type = com.iteblog.flume.MysqlSink |
10 |
agent.sinks.mysqlSink.hostname=localhost |
11 |
agent.sinks.mysqlSink.port= 3306 |
12 |
agent.sinks.mysqlSink.databaseName=ngmonitor |
13 |
agent.sinks.mysqlSink.tableName=mysqltest |
14 |
agent.sinks.mysqlSink.user=root |
15 |
agent.sinks.mysqlSink.password= 123456 |
16 |
agent.sinks.mysqlSink.channel = c1 |
用下面的命令就可以启动:
1 |
bin/flume-ng agent -c conf/ -f conf/mysql_test.conf -n agent |
再看下Mysql中的情况:
1 |
mysql> select count(*) from mysqltest; |
以上是关于Flume-ng与Mysql整合开发的主要内容,如果未能解决你的问题,请参考以下文章
Flume-ng禁用自动加载配置文件功能
如何利用Spring Boot 整合微信小程序实现登录与增删改查(含代码解析)
Flume-NG + HDFS + HIVE 日志收集分析
flume-ng源码分析-核心组件分析
springboot Thymeleaf 整合
Flume-NG源码分析-整体结构及配置载入分析