开源工具介绍之Flume

是什么?

一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输系统。

功能

  • 收集数据
  • 对数据简单处理,并写到数据接收方的能力

介绍一下flume的主要组件:

Flume的运行核心是Agent。(一个完整的数据收集工具)
Agent主要由source,channel,sink三个组件组成。一个Agent包含多个sources和sink。允许多个Agent连接在一起成多级跳。

  • source从client收集数据,传递给channel。不同的source,可以接收不同的数据格式。
  • sink从channel收集数据,运行在一个独立线程,消费channel中的数据,然后送给外部源或者其他source
  • channel连接sources和sinks,作为一个存储区。接收source的输出,由sink消费channel的数据。channel中的数据直到进入到下一个channel中或者进入终端才会被删除。当sink写入失败后,可以自动重启,不会造成数据丢失,因此很可靠。

不同类型的Source,Channel和Sink可以自由组合。组合方式基于用户设置的配置文件,非常灵活。比如:Channel可以把事件暂存在内存里,也可以持久化到本地硬盘上。Sink可以把日志写入HDFS, HBase,甚至是另外一个Source等等。

还有一些其他的组件:

  • client:生产数据,运行在一个独立线程。
  • Events:Flume传输的数据的基本单位。可以是日志记录,对象等。可以从一个地方流向另一个地方,为了保证传输一定成功,在送到目的地之前会先缓存数据,待数据真正到达目的地后,删除自己缓存的数据。

数据流模型

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值