zoukankan      html  css  js  c++  java
  • Flume 监听本地目录到 HDFS

    a1.sources = s1
    a1.channels = c1
    a1.sinks = k1

    a1.sources.s1.channels = c1
    a1.sources.s1.type = spooldir
    a1.sources.s1.spoolDir = /home/abby/data
    a1.sources.s1.fileHeader = true
    a1.sources.s1.deletePolicy = immediate

    # 内存和本地一并使用,优先使用内存做缓冲 如果内容不够,那就使用 本地磁盘
    # 前面是内存的配置实用内存的
    # 下面是本地的设置 方式和最上面一样的
    a1.channels.c1.type = SPILLABLEMEMORY
    a1.channels.c1.memoryCapacity = 10000
    a1.channels.c1.overflowCapacity = 1000000
    a1.channels.c1.byteCapacity = 800000
    a1.channels.c1.checkpointDir =/home/abby/flume/checkpoint
    a1.channels.c1.dataDirs = /home/abby/flume/dataDir

    a1.sinks.k1.type = hdfs
    a1.sinks.k1.channel = c1

    # 生成的目录是flume 然后是年 然后是时间的目录
    a1.sinks.k1.hdfs.path =/flume/a2/%Y-%m-%d/%H_%M

    # 文件的前缀
    a1.sinks.k1.hdfs.filePrefix = final

    # 文件的后缀
    a1.sinks.k1.hdfs.fileSuffix = .log

    # 文件还没到回滚时间在使用的前缀
    a1.sinks.k1.hdfs.inUsePrefix = inUse

    # 在使用的后主
    a1.sinks.k1.hdfs.inUseSuffix = .tmp

    # 设置文件的回滚时间,60秒后生成新的文件 ,如果文件没有数据,不会回滚,因为hdfs上不允许很多没有数据的文件的存在,这里是按照时间设置,设置一个后其他都要是0
    # 按照大小回滚的时候 没有满足要求之前都是放在一个文件中,哪怕大小超过设置的
    # 事件的回滚,就是时间的个数 ,比如10 发送10行数据才会回滚一次
    # 超时时间回滚,如60 就是如果60秒中没有收集到数据 就会回滚一次生成一个文件
    a1.sinks.k1.hdfs.rollInterval = 60
    a1.sinks.k1.hdfs.rollSize = 0
    a1.sinks.k1.hdfs.rollCount = 0
    a1.sinks.k1.hdfs.idleTimeout = 0

    # 这里是设置目录回滚 10分钟回滚1次 生成一个新的目录
    a1.sinks.k1.hdfs.round = true
    a1.sinks.k1.hdfs.roundValue = 10
    a1.sinks.k1.hdfs.roundUnit = minute

    # 设置文件的类型
    a1.sinks.k1.hdfs.fileType = DataStream
    a1.sinks.k1.hdfs.writeFormat = Text

    # 设置时区 和 时间戳
    a1.sinks.k1.hdfs.timeZone = Asia/Shanghai
    a1.sinks.k1.hdfs.useLocalTimeStamp = true

    注意:必须是UTF-8的数据才能被收集,否则会被报错,

      若文件在开启flume之前就已经存在,也能被收集进去 , 而且原文件会被删除.

  • 相关阅读:
    大型网站的可伸缩性架构如何设计?
    前端路由跳转基本原理
    强大的CSS:用纯css模拟下雪的效果
    package.json 和 package-lock.json 文件说明
    CSS 继承深度解析
    EJS-初识
    百度前端学院-基础学院-第20到21天之setTimeOut与setInterval
    百度前端学院-基础学院-第20到21天
    es6字符串方法
    字符串方法之padStart和padEnd
  • 原文地址:https://www.cnblogs.com/alpha-cat/p/12529291.html
Copyright © 2011-2022 走看看