05 友盟项目--通过flume-kafka消息到hdfs
收集kafka消息到hdfs
开hdfs
start-dfs.sh
1.说明
每天上报的日志可能会含有以前的日志数据。但是每天上报的日志在一个以日期分割的目录内。
ym/day
2.umeng_kafka_to_hdfs.conf
a1.sources = r1
a1.channels = c1
a1.sinks = k1
a1.sources.r1.type = org.apache.flume.source.kafka.KafkaSource
a1.sources.r1.batchSize = 5000
a1.sources.r1.batchDurationMillis = 2000
a1.sources.r1.kafka.bootstrap.servers = s102:9092
a1.sources.r1.kafka.topics = big12-umeng-raw-logs
a1.sources.r1.kafka.consumer.group.id = g10
a1.channels.c1.type=memory
a1.sinks.k1.type = hdfs
#hdfs文件存储路径 ,以年月日为目录存储
a1.sinks.k1.hdfs.path = /user/centos/umeng_big12/raw-logs/%Y%m/%d
#文件前缀
a1.sinks.k1.hdfs.filePrefix = events-
# 对目录进行滚动
a1.sinks.k1.hdfs.round = true
# 滚动时间单位 1 天
a1.sinks.k1.hdfs.roundValue = 1
a1.sinks.k1.hdfs.roundUnit = day
# 文件滚动 时间:30s 大小:10240k 行数:500
a1.sinks.k1.hdfs.rollInterval = 30
a1.sinks.k1.hdfs.rollSize = 10240
a1.sinks.k1.hdfs.rollCount = 500
# 时间戳
a1.sinks.k1.hdfs.useLocalTimeStamp = true
# 文件
a1.sinks.k1.hdfs.fileType = DataStream
a1.sources.r1.channels=c1
a1.sinks.k1.channel=c1
3.准备hdfs
hdfs dfs -mkdir -p /user/centos/umeng_big12/raw-logs
/user/centos/umeng_big12/raw-logs
4.启动flume进程
flume-ng agent -f /soft/flume/conf/umeng_kafka_to_hdfs.conf -n a1 &![]()

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下