本文主要是介绍Flume - 初用Flume 1.8.0,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Flume - 初用Flume
在Flume中,最重要的三个部件分别为:
- source
- channels
- sink
在本例中我们使用如图的架构来进行Flume数据采集:
当前使用的flume版本号为1.8.0
,如果相对其他类别的配置有更详细的了解,可查看:http://flume.apache.org/FlumeUserGuide.html
对于flume中的使用主要是对于配置文件的使用,本文所使用的的配置文件名为flume安装目录下的conf/flume-conf.properties
一、总体配置
agent.sources = dirSrc
agent.channels = memoryChannel
agent.sinks = kafkaSink
在这里面我们总共做了如下几个事情:
- 定义该flume应用的名称为agent
- 该应用的sources名称为dirSrc
- 该应用的channels名称为memoryChannel
- 该应用的sinks名称为kafkaSink
二、定义sources
我们使用的 sources 类型为Spooling Directory Source
。
其作用是:监听一个文件夹,收集文件夹下新文件数据,收集完新文件数据会将文件名称的后缀改为.COMPLETED,缺点是不支持老文件新增数据的收集,并且不能够对嵌套文件夹递归监听。
我们配置文件的内容为:
agent.sources.dirSrc.type = spooldir
agent.sources.dirSrc.spoolDir=/mnt/vdb/bigdata/flume/data
agent.sources.dirSrc.fileHeader=true
agent.sources.dirSrc.channels = memoryChannel
关键参数说明:
- type:source类型为spooldir。
- spoolDir:source监听的文件夹。
- fileHeader:是否添加文件的绝对路径到event的header中,默认值false。
- fileHeaderKey:添加到event header中文件绝对路径的键值,默认值file。
- selector.type:选择器类型,默认replicating(可选值为replicat
这篇关于Flume - 初用Flume 1.8.0的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!