前言

在一个完整的离线大数据处理系统中,除了hdfs+mapreduce+hive组成分析系统的核心之外,还需要数据采集、结果数据导出、任务调度等不可或缺的辅助系统,而这些辅助工具在hadoop生态体系中都有便捷的开源框架,如图所示:
Flume入门 01

1. Flume的基本介绍

  • Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。
  • Flume可以采集文件,socket数据包、文件、文件夹、kafka等各种形式源数据,又可以将采集到的数据(下沉sink)输出到HDFS、hbase、hive、kafka等众多外部存储系统中
  • 一般的采集需求,通过对flume的简单配置即可实现
  • Flume针对特殊场景也具备良好的自定义扩展能力,
    因此,flume可以适用于大部分的日常数据采集场景

flume是cloudera公司开源提供的一个数据采集的框架,可以从各个地方采集我们的数据,文件,文件夹,网络端口。
flume是一个数据采集的框架,说白了就是搬运数据的。

2. Flume架构图

2.1 简单结构

Flume入门 01

  • source:对接数据源,获取数据,采集数据的组件。
  • channel:source采集的数据全部都发送到channel里面来,管道,做一个缓冲,缓冲一下source发送过来的数据,然后批量的发送给sink。
  • sink:决定我们的数据需要发送到哪里去。
  • agent:一个flume的程序运行起来,就叫做一个agent。
  • events:我们一条条的数据,一条数据就是一个event。

2.2 复杂结构

多级agent之间串联
Flume入门 01

相关文章: