Apache Flume(3):数据持久化

1 使用组件

2 属性设置

|---------------|-----------------------------------|----------------------------------------------------|
| 属性名 | 默认值 | 说明 |
| type | - | file |
| checkpointDir | ~/.flume/file-channel/checkpoint | 检查点文件存放路径 |
| dataDirs | ~/.flume/file-channel/data | 日志存储路径,多个路径使用逗号分隔. 使用不同的磁盘上的多个路径能提高file channel的性能 |

添加配置文件file-channel.conf,添加一个FileChannel

复制代码
# 定义agent名称为a1
# 设置3个组件的名称
a1.sources = r1
a1.sinks = k1
# 多个channel使用空格分隔
a1.channels = c1 c2

# 配置source类型为NetCat,监听地址为本机,端口为44444
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 44444

# 配置sink类型为Logger
a1.sinks.k1.type = logger

# 配置channel类型为内存,内存队列最大容量为1000,一个事务中从source接收的Events数量或者发送给sink的Events数量最大为100
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100

# 配置FileChannel,checkpointDir为检查点文件存储目录,dataDirs为日志数据存储目录,
a1.channels.c2.type = file
a1.channels.c2.checkpointDir = /opt/soft/bak/flume/checkpoint
a1.channels.c2.dataDirs = /opt/soft/bak/flume/data

# 将source和sink绑定到channel上
# source同时绑定到c1和c2上
a1.sources.r1.channels = c1 c2
a1.sinks.k1.channel = c1

为了方便日志打印,可以将-Dflume.root.logger=INFO,console添加在conf的环境配置中,从模板复制一份配置

复制代码
cp flume-env.sh.template flume-env.sh
vi flume-env.sh
# 添加JAVA_OPTS
export JAVA_OPTS="-Dflume.root.logger=INFO,console"

3 启动Flume

复制代码
bin/flume-ng agent -n a1 -c ./ -f conf/file-channel.conf

通过Netcat发送数据,此时发送到c2的数据没有被消费

关闭Flume,修改配置文件

复制代码
# 将sink绑定到c2上

a1.sinks.k1.channel = c2

重启Flume,可以看到会重新消费c2的数据

相关推荐
SeaTunnel2 分钟前
关于 Apache SeaTunnel 类加载器治理的一些观察与思考(欢迎讨论)
大数据·开源·apache·seatunnel·数据同步
北冥有羽Victoria3 分钟前
Django 实战:SQLite 转 MySQL 与 Bootstrap 集成
大数据·服务器·python·django·编辑器
拓端研究室4 分钟前
2026年智能网联汽车(车联网)蓝皮书:渠道整合、新能源出海与市场分化|附200+份报告PDF、数据、可视化模板汇总下载
大数据·人工智能
咕噜签名-铁蛋10 分钟前
OpenClaw 中转 API:打造安全高效的 AI 智能体调用方案
大数据·人工智能·安全
QYR-分析10 分钟前
2026车载同轴电缆行业全景分析:产品、市场与发展机遇
大数据·人工智能
嵌入式小企鹅14 分钟前
Claude开源风暴?半导体设备突破?
大数据·人工智能·学习·开源·嵌入式·半导体·ai芯片
DolphinScheduler社区16 分钟前
小白版 | Apache DolphinScheduler 本地启动指南
大数据·开源·apache·海豚调度·大数据工作流调度
科技动态26 分钟前
BOE(京东方)重磅展出搭载自研TSF第四代发光技术产品,定义“高亮广色域”柔性显示新标杆
大数据
星川皆无恙32 分钟前
Transformer学习笔记:从 Attention 核心理论到机器翻译代码项目学习实战
大数据·pytorch·笔记·深度学习·神经网络·自然语言处理·transformer
2601_9553631539 分钟前
技术赋能B端拓客:号码核验行业的迭代与价值升级氪迹科技法人股东号码筛选系统,阶梯式价格
大数据·人工智能