Flume遇到的一些问题

  1. flume部件及参数
    在这里插入图片描述
    • batchData的大小由参数batchSize控制;
    • putList和takeList的大小由参数transactionCapacity控制;
    • Channel总容量大小由参数capacity控制;
  2. 参数说明
    1. Source的batchSize参数决定Source一次批量运输到Channel的event条数,适当调大这个参数可以提高Soure搬运Event到Channel时的性能。
    2. capacity 参数决定Channel可容纳最大的event条数。
    3. transactionCapacity 参数决定每次Source往channel里面写的最大event条数和每次Sink从channel里面读的最大event条数。
    4. transactionCapacity需要大于Source和Sink的batchSize参数。
    5. Sink的batchSize参数决定Sink一次批量从Channel读取的event条数,适当调大这个参数可以提高Sink从Channel搬出event的性能。
  3. flume错误汇总
    1. 容量分配不足
      错误描述:
      org.apache.flume.ChannelFullException: Space for commit to queue couldn't be 	acquired. Sinks are likely not keeping up with sources, or the buffer size is too tight
      
      解决方法:
      1. 调整Agent 的 Java 堆栈大小
        bin/flume-ng
        ...
        ###############################
        # main
        ################################
        
        # set default params
        FLUME_CLASSPATH=""
        FLUME_JAVA_LIBRARY_PATH=""
        JAVA_OPTS="-Xmx2048m"                       # 修改
        LD_LIBRARY_PATH=""
        ...
        
      2. 将channel的参数capacity、transactionCapacity调大,比如分别由之前的10000、1000,增大到 100000、10000。
    2. batchSize过小
      错误描述:
      org.apache.flume.ChannelException: Take list for MemoryTransaction, capacity 100 full, consider 		committing more frequently, increasing capacity, or increasing thread count
      
      解决方法:
      将sink的参数batchSize调小,比如由1000改为100。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值