Flume
一个完整的工作流程:
source不断的接收数据,将数据封装成一个一个的event,然后将event发送给channel,chanel作为一个缓冲区会临时存放这些event数据,随后sink会将channel中的event数据发送到指定的地方—-例如HDFS等。
注:只有在sink将channel中的数据成功发送出去之后,channel才会将临时event数据进行删除,这种机制保证了数据传输的可靠性与安全性。
他的扇入流和扇出流十分便捷,他的自由性让我十分喜欢,内置选择器可以根据业务调整发送位置。拦截器来修改和删除Event 提供了简单的基于字符串的正则搜索和替换功能。Flume Sink Processor 可以通过切换组内Sink用来实现负载均衡的效果
或在一个Sink故障时切换到另一个Sink。 设置优先级或轮询
Channel存在文件仓库和内存仓库,各有优劣,我喜欢使用内存仓库因为他效率高