Flume学习之Spillable Memory Channel

Spillable Memory Channel

事件被存储在内存缓存中或者磁盘上,内存缓存作为主要存储而磁盘则是接收溢出时的事件将其存储到磁盘上。磁盘存储是由一个嵌入的File Channel来管理的。当内存缓存队列满了的时候,额外的event将被存储到File Channel。这样当agent 崩溃或者机器死机 存放在磁盘上的数据将能够被恢复,从而减少数据丢失

 This channel is currently experimental and not recommended for use in production.(不适用于生产……………………)

属性名 默认
描述
type 组件名 ,固定值 SPILLABLEMEMORY
memoryCapacity 10000 设定memory channel队列存储事件的最大值,如果要禁用, 将该值设置为0
overflowCapacity 100000000 设定file channel中存储事件的最大值,如果要禁用, 将该值设置为0
overflowTimeout 3 内存channel满了之后,切换到file channel之前的等待时间
byteCapacityBufferPercentage 20 用来限制内存channel使用物理内存量,默认20
byteCapacity 进程中可用堆空间的80%
channel允许使用的最大的堆空间
avgEventSize 500 指定每个event的大小,用来计算内存channel可以使用的slot总数量,会把event量化为slot,而不是字节,默认500




你可能感兴趣的:(Flume学习之Spillable Memory Channel)