【Flume中间件】(3)实时监听文件到HDFS系统

本文涉及的产品
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
简介: 【Flume中间件】(3)实时监听文件到HDFS系统

实时监听文件到HDFS系统

之前测试了监听一个文件的新内容,然后打印到了控制台,现在我们需要将监控到的内容放到HDFS中进行存储,其实和控制台一样,只不过是将sink源改到HDFS,修改一下相关的配置。

a1.sources = r1
a1.sinks = k1
a1.channels = c1
a1.sources.r1.type = exec
a1.sources.r1.command=tail -F /home/hadoop/data/file
# 指定用什么去解析上面的命令
a1.sources.r1.shell=/bin/bash -c
a1.sinks.k1.type = hdfs
# 配置hdfs存储的路径,这里我设置的是动态路径,按照时间命名的文件夹
a1.sinks.k1.hdfs.path=hdfs://hadoop102:9000/flume/%Y%m%d/%H
# 给存储到HDFS的文件加个前缀标明该数据为日志信息
a1.sinks.k1.hdfs.filePrefix=logs-
# 是否按照时间进行滚动文件夹,对应上面配置的动态文件夹
a1.sinks.k1.hdfs.round=true
a1.sinks.k1.hdfs.roundValue=1
# 设置时间量级为秒、分钟还是小时
a1.sinks.k1.hdfs.roundUnit=hour
# 是否使用本地时间戳,我测试了一下,如果这里设置成false,HDFS目录不会发生变化,可能是hdfs配置的动态时间路径就是按照时间戳配置的
a1.sinks.k1.hdfs.useLocalTimeStamp=true
# 积攒多少个Event才会flush到HDFS
a1.sinks.k1.hdfs.batchSize=1000
# 文件类型
a1.sinks.k1.hdfs.fileType=DataStream
# 多久会生成一个新的文件,如果监听的文件没有变化,尽管到了时间也不会产生新文件,产生新文件需要事件去触发
a1.sinks.k1.hdfs.rollInterval=30
# 每个文件大小达到多少会进行滚动
a1.sinks.k1.hdfs.rollSize=134217700
# 设置文件的滚动与事件无关
a1.sinks.k1.hdfs.rollCount=0
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1     

HDFS的目录我们不需要提前建立,flume会自动为我们创建指定目录

我们可以看到文件的命名就是以我们设置的logs-作为前缀,后面拼接的是时间戳。


目录
相关文章
|
7月前
|
存储 分布式计算 监控
【Flume】Flume 监听日志文件案例分析
【4月更文挑战第4天】【Flume】Flume 监听日志文件案例分析
|
7月前
|
边缘计算 安全 中间件
软件体系结构 - 嵌入式系统(4)- 嵌入式中间件
软件体系结构 - 嵌入式系统(4)- 嵌入式中间件
268 0
|
2月前
|
SQL 分布式计算 监控
Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
72 3
|
4月前
|
存储 数据采集 数据处理
【Flume拓扑揭秘】掌握Flume的四大常用结构,构建强大的日志收集系统!
【8月更文挑战第24天】Apache Flume是一个强大的工具,专为大规模日志数据的收集、聚合及传输设计。其核心架构包括源(Source)、通道(Channel)与接收器(Sink)。Flume支持多样化的拓扑结构以适应不同需求,包括单层、扇入(Fan-in)、扇出(Fan-out)及复杂多层拓扑。单层拓扑简单直观,适用于单一数据流场景;扇入结构集中处理多源头数据;扇出结构则实现数据多目的地分发;复杂多层拓扑提供高度灵活性,适合多层次数据处理。通过灵活配置,Flume能够高效构建各种规模的数据收集系统。
97 0
|
6月前
|
消息中间件 中间件
中间件消息降低系统间的耦合性
【6月更文挑战第8天】
71 5
|
6月前
|
消息中间件 存储 负载均衡
|
2月前
|
消息中间件 中间件 数据库
NServiceBus:打造企业级服务总线的利器——深度解析这一面向消息中间件如何革新分布式应用开发与提升系统可靠性
【10月更文挑战第9天】NServiceBus 是一个面向消息的中间件,专为构建分布式应用程序设计,特别适用于企业级服务总线(ESB)。它通过消息队列实现服务间的解耦,提高系统的可扩展性和容错性。在 .NET 生态中,NServiceBus 提供了强大的功能,支持多种传输方式如 RabbitMQ 和 Azure Service Bus。通过异步消息传递模式,各组件可以独立运作,即使某部分出现故障也不会影响整体系统。 示例代码展示了如何使用 NServiceBus 发送和接收消息,简化了系统的设计和维护。
65 3
|
2月前
|
SQL 分布式计算 Hadoop
Hadoop-19 Flume Agent批量采集数据到HDFS集群 监听Hive的日志 操作则把记录写入到HDFS 方便后续分析
Hadoop-19 Flume Agent批量采集数据到HDFS集群 监听Hive的日志 操作则把记录写入到HDFS 方便后续分析
53 2
|
4月前
|
运维 安全 Cloud Native
核心系统转型问题之分布式数据库和数据访问中间件协作如何解决
核心系统转型问题之分布式数据库和数据访问中间件协作如何解决
|
6月前
|
消息中间件 中间件
中间件消息降低系统复杂性
【6月更文挑战第9天】
32 4

热门文章

最新文章

相关实验场景

更多