教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

Flume日志采集系统结构图

更新时间:2021年12月01日14时29分 来源:传智教育 浏览次数:

Flume的核心角色是Agent,通过Agent可以从其他服务中采集数据,并通过内部event流的形式传输到Sink,并根据需求最终向下一个Agent传输或者进行集中式存储。

在实际开发中,Flume需要采集数据的类型多种多样,同时还会进行不同的中间操作,所以根据具体需求,可以将Flume日志采集系统分为简单结构和复杂结构。

1. 简单结构

当需要采集数据的生产源比较单一、简单的时候,可以直接使用一个Agent来进行数据采集并最终存储,结构如Flume基本架构,如下图所示。

Flume基本机构

2. 复杂结构

有时候需要采集数据的数据源分布在不同的服务器上,使用一个Agent进行数据采集不再适用,这时就可以根据业务需求部署多个Agent进行数据采集并最终存储,结构如下图所示。

flueme复杂结构

Flume复杂结构——多Agent

从图2可以看出,对每一个需要收集数据的Web服务端都搭建了一个Agent进行数据采集,接着再将这多个Agent中的数据作为下一个Agent的Source进行采集并最终集中存储到HDFS中。

除此之外,在开发中还有可能遇到从同一个服务端采集数据,然后通过多路复用流分别传输并存储到不同目的地的情况,结构如图3所示。

flume多路复用

从图3可以看出,根据具体需求,将一个Agent采集的数据通过不同的Channel分别流向了不同的Sink,然后再进行下一阶段的传输或存储(如图3所示,将多个Sink数据分别进行了HDFS集中式存储、作为JMS消息服务、作为另一个Agent的Source)。



猜你喜欢:

IPV6是什么?如何使用IPV6访问互联网?

IPv4耗尽已成事实,IPv6的未来已来!

Scala的方法和函数介绍

传智教育python+大数据开发课程

0 分享到:
和我们在线交谈!