Flume基本使用--mysql数据输出

MySQL数据输出

在MySQL中建立数据库school,在数据库中建立表student。SQL语句如下:

python 复制代码
create database school;
use school;
create table student(
        id   int not null,
        name   varchar(40),
        age   int,
        grade   int,
        primary   key(id)
);

请使用Flume实时捕捉MySQL数据库中的记录更新,一旦有新的记录生成,就捕获该记录并显示到控制台。可以使用如下SQL语句模拟MySQL数据库中的记录生成操作。

python 复制代码
insert into   student(id,name,age,grade)value(1,'Xiaoming',23,98);

insert into   student(id,name,age,grade)value(2,'Zhangsan',24,96);

insert into   student(id,name,age,grade)value(3,'Lisi',24,93);

insert into   student(id,name,age,grade)value(4,'Wangwu',21,91);

insert into   student(id,name,age,grade)value(5,'Weiliu',21,91);

要求:

(1)给出配置文件

安装好flume-ng-sql-source-1.5.2.jar以及mysql-connector-java-8.0.23.jar

python 复制代码
#设置名称
a1.sources=r1
a1.sinks=k1
a1.channels=c1

#配置Source
a1.sources.r1.type=org.keedio.flume.source.SQLSource
a1.sources.r1.hibernate.connection.url=jdbc:mysql://localhost:3306/school
a1.sources.r1.hibernate.connection.user=root
a1.sources.r1.hibernate.connection.password=123456
a1.sources.r1.hibernate.connection.autocommit=true
a1.sources.r1.table=student
a1.sources.r1.run.query.delay=5000
a1.sources.r1.status.file.path=C:/software/apache-flume-1.9.0-bin
a1.sources.r1.status.file.name=a1.status

#配置Sink
a1.sinks.k1.type=logger

#配置channels
a1.channels.c1.type=memory

#绑定sink source到channels上
a1.sources.r1.channels=c1
a1.sinks.k1.channel=c1

(2)写出启动Flume的命令

新建一个cmd窗口,输入如下命令启动Flume:

> cd C:\apache-flume-1.9.0-bin

> .\bin\flume-ng agent --conf .\conf --conf-file .\conf\znconsole.conf --name a1 -property flume.root.logger=INFO,console

(3)在MySQL窗口中执行如下SQL语句,向数据库中插入记录后,在Flume窗口将运行结果展出来

建表,插入数据

Flume接收到数据,可以看到我在插入数据时还把自己的名字发过去了

相关推荐
科普瑞传感仪器11 分钟前
从“盲操作”到“智能感知”:六维力传感器解决装配卡死的创新方案
人工智能·科技·物联网·机器人·无人机·1024程序员节
开开心心就好2 小时前
图片批量压缩工具:支持有损无损两种模式
java·游戏·pdf·excel·散列表·启发式算法·1024程序员节
CoderYanger2 小时前
A.每日一题——3512. 使数组和能被 K 整除的最少操作次数
java·数据结构·算法·leetcode·职场和发展·1024程序员节
CoderYanger15 小时前
递归、搜索与回溯-记忆化搜索:38.最长递增子序列
java·算法·leetcode·1024程序员节
CoderYanger17 小时前
C.滑动窗口-越短越合法/求最长/最大——2958. 最多 K 个重复元素的最长子数组
java·数据结构·算法·leetcode·哈希算法·1024程序员节
CoderYanger1 天前
A.每日一题——2435. 矩阵中和能被 K 整除的路径
开发语言·线性代数·算法·leetcode·矩阵·深度优先·1024程序员节
CoderYanger2 天前
递归、搜索与回溯-穷举vs暴搜vs深搜vs回溯vs剪枝:12.全排列
java·算法·leetcode·机器学习·深度优先·剪枝·1024程序员节
QQ20795235592 天前
基于机器学习的农产品价格数据分析与预测的可视化系统毕业设计项目源码
1024程序员节
金融小师妹2 天前
基于LSTM-GARCH混合模型:降息预期驱动金价攀升,白银刷新历史峰值的蒙特卡洛模拟验证
大数据·人工智能·深度学习·1024程序员节
普通网友2 天前
‌Flutter vs Kotlin:移动开发的未来趋势与选择
1024程序员节