Flume采集的控制台提示:
The channel is full or unexpected failure. The source will try again after 1000 ms
這個是因為當前被采集的文件過大,深層的原因是文件采集的速度和sink的速度沒有匹配好。所以應該可以通過增大keep-alive的值解決:
#channel中最多緩存多少
a1.channels.c1.capacity = 5000
#channel一次最多吐給sink多少
a1.channels.c1.transactionCapacity = 2000
#event的活躍時間
a1.channels.c1.keep-alive = 10
或者寫到HDFS使用壓縮,可以通過壓縮來節省空間和網絡流量,但是會增加cpu的消耗。